はい、すべてのBiConsumerアクションが追加され、complete(...)を呼び出すと逆の順序で実行されます。
これは次のようになります実証する例:
My tests ...
do something else; false
three step(s)
two step(s)
one step(s)
Done true
:
public class Application {
public static void main(String[] args) {
System.out.println("My tests ...");
CompletableFuture<String> futureString = new CompletableFuture<String>();
futureString.whenComplete((s,e)->System.out.println("one " + s));
futureString.whenComplete((s,e)->System.out.println("two " + s));
futureString.whenComplete((s,e)->System.out.println("three " + s));
System.out.println("do something else; "+ futureString.isDone());
futureString.complete("step(s)");
System.out.println("Done " + futureString.isDone());
}
}
このプログラムを実行し、印刷された結果は、この見えます