gpt4 book ai didi

java - 获取第一个可用的 AsyncResult

转载 作者:行者123 更新时间:2023-11-30 10:57:35 28 4
gpt4 key购买 nike

我有几个异步方法 (Annotatad @Asynchronous) 返回 future 对象。我必须立即执行它们,但这足以让我获得第一个准备就绪的结果,是否有任何适用于 Java EE 容器的安全可靠的解决方案?

谢谢!

最佳答案

此工具没有标准 API。只需检查 Future#isDone()你自己在一个实用方法中的当前线程上陷入无限循环,如下所示:

public static <T> Future<T> getFirstDone(List<Future<T>> futures) {
while (true) {
for (Future<T> future : futures) {
if (future.isDone()) {
return future;
}
}

// Break if necessary infinite loop here once it reaches certain timeout.
}
}

用法:

List<Future<Foo>> results = collectThemSomehow();
Future<Foo> firstDoneResult = getFirstDone(results);
// ...

关于java - 获取第一个可用的 AsyncResult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32565078/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com