新手这里...Akka期货清单 - 如何等待期货清单完成?
我已经有一个非常简单的可调用域对象的集合。在使用期货时,我所关心的是真正知道所有期货何时完成。
因此,我创建了一个期货集合,迭代我的域对象,创建未来(可调用)并将其添加到期货集合中。
假设可调用函数返回一个布尔值,我如何确定所有的期货已经完成。
哦!我想等到这个集合被处理,然后再处理另一个集合,因为第二个集合过程依赖于第一个集合。
任何帮助表示赞赏。
表示不同: 如何等待数组中的所有项目完成?我是否需要迭代并等待每个?
ArrayList<Future<Object>> responses = new ArrayList<Future<Object>>();
PS:编码在JAVA和也上使用PartialFunctions等的混淆,或许上应用滤波器,计数和对集合大小比较作为一个可能的解决方案...
感谢Gian, 在Java下的Futures.sequence中没有.get()方法,在Akka 2.1.2 @“错误的方法” - 我没有完全解释。 这与文章中的完全一样。在添加期货时,我想收集它们在ArrayList>中,当我调用Futures.sequence()时,我将获得Future >。 –
我很困惑。你仍然在获得'未来'。为什么等待这个未来不适合你的用例呢? – Gian