Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 等待可完成的未来列表_Java_Asynchronous_Future - Fatal编程技术网

Java 等待可完成的未来列表

Java 等待可完成的未来列表,java,asynchronous,future,Java,Asynchronous,Future,如何等待未来列表15分钟(如果未完成),而不是每个未来? 下面的代码将为每个未来等待15分钟。但这不是我想要的 for (CompleteableFuture<String> m : futureList) { m.get(15, TimeUnit.MINUTES) ; } Syso( " Send email") ; for(CompleteableFuture m:futureList){ m、 get(15,时间单位:分钟); } 系统(“发送电子邮件”);

如何等待未来列表15分钟(如果未完成),而不是每个未来? 下面的代码将为每个未来等待15分钟。但这不是我想要的

for (CompleteableFuture<String> m : futureList) {
        m.get(15, TimeUnit.MINUTES) ;
}

Syso( " Send email") ;
for(CompleteableFuture m:futureList){
m、 get(15,时间单位:分钟);
}
系统(“发送电子邮件”);
像这样使用:

       CompletableFuture.allOf(futureList).get(15, TimeUnit.MINUTES);

也许您可以跟踪经过的时间,并在后续迭代中只等待剩余的时间?如果您可以选择切换到Guava,那么您可以使用
com.google.common.util.concurrent.Futures#allAsList(ListenableFuture…)
是的,实际上我正在获取列表myKafkaFutures,但allAsList没有传递时间的选项。
allOf()
接受一个数组。如果
futureList
列表
集合
则需要对其进行转换。