パブリック クラスCompletableFuture3 { 公共 静的 ボイドメイン(文字列[]引数)がExecutionException、InterruptedExceptionある{スロー // ; TESTJOIN() testCompletableException(); } / * * * completeExceptionallyは将来が完了していない場合、このような方法は、ブロックしない取得することができ、そのコールを取得方法は、例外スロー * @throws ExecutionException * @throws InterruptedExceptionある * / パブリック 静的 ボイド testCompletableExceptionを()ExecutionException、InterruptedExceptionある{スロー CompletableFutureの<string>将来CompletableFuture.supplyAsync =(() - > { SLEEPを(。5); 。[システムOUTの .println(" ======= " ); リターン " こんにちは" ; }); SLEEP(1。); future.completeExceptionally(新しい新しい例外()); 。[システムOUTの .println(フューチャー。取得()); } / * * *取得結果は、チェック例外がスローされますゲットするという違いで、例外のチェックをスローしない参加する * / パブリック 静的な 無効 TESTJOIN(){ CompletableFuture <文字列> = CompletableFuture未来を。 supplyAsync(() - > { 睡眠(5 ); システム。アウト(.println " ======= " )。 返す 「こんにちは」; }); 文字列結果 = future.join()。 システム。アウト.println(結果); } プライベート 静的 ボイド 睡眠(INT 秒){ 試み{ TimeUnit.SECONDS.sleep(秒)。 } キャッチ(InterruptedExceptionある電子){ e.printStackTrace(); } } }
CompletableFuture3
おすすめ
転載: www.cnblogs.com/moris5013/p/12038551.html
ランキング