今回も前回に引き続き、Concurrency UtilitiesのCompletableFutureクラスを紹介していきます。 CompletableFutureクラスはFutureインタフェースを実装したクラスで、非同期に処理する複数のタスクを組み合わせて実行することができます。前回、非同期処理するタスクを組み合わせる手法について紹介しました。 今回は、非同期処理の制御に関する機能について紹介します。また、これまでは非同期に処理するタスクが正常に完了していた場合のみを取り上げていましたが、例外が発生した場合についても取り上げます。 非同期処理の制御 CompletedFutureクラスが実装しているFutureインタフェースは、結果の取得や処理のキャンセルなどの機能を定義しています。CompletedFutureクラスはこれらの機能に加え、独自の機能を提供しています。表1に主なメソッドを
