我有三个
CompletableFuture
详情如下:
public Object someMethod(){
CompletableFuture future1 = CompletableFuture.allOf(futureArray1).exceptionally(this::handleException);
CompletableFuture future2 = CompletableFuture.runAsync(() ->
// Here I do something needed for futureArray2 to run );
CompletableFuture future3 = CompletableFuture.allOf(futureArray2).exceptionally(this::handleException);
}
我试图实现的是当调用该方法时:
-
全部
futures1
要运行(可以同时运行所有线程),请连接到主线程,
-
someMethod
返回,
-
future2
跑
-
全部
futures3
追赶
未来2
完成(同样,可以同时运行所有这些,只需要
未来2
完成)。
所以基本上,如果我有
thenAllOf
方法
完全的未来
,那就解决了我的问题。我如何模仿:
public Object someMethod(){
CompletableFuture.allOf(futureArray1).join();
CompletableFuture.runAsync() -> // Do something for futureArray2).thenAllOf(futureArray2);
}