簡體   English   中英

Akka期貨清單-如何等待期貨清單完成?

[英]Akka List of futures - how to wait for list of futures to finish?

新手在這里...

我在域對象集合上有一個非常簡單的可調用對象。 使用期貨時,我所關心的就是真正知道所有期貨何時完成。

因此,我要創建一個期貨集合,遍歷我的域對象,創建一個期貨(帶有可調用對象)並將其添加到期貨集合中。

假設可調用函數返回布爾值,那么我如何確定所有期貨都已完成。

哦! 我想等到這個集合被處理后再處理另一個集合,因為第二個集合過程取決於第一個集合。

任何幫助表示贊賞。

表示不同 :如何等待陣列中的所有項目完成? 我是否需要迭代並等待它們?

ArrayList<Future<Object>> responses = new ArrayList<Future<Object>>();

PS:用JAVA編碼,並且對PartialFunctions等的使用也感到困惑 ,可能是應用過濾器,對集合大小進行計數和比較作為可能的解決方案...

OK-通過執行以下操作解決了該問題:

Await.result(seq, Duration.create("5 seconds"));

哪里

Future<Iterable<Boolean>> seq = Futures.sequence(futures, ec);

futuresfutures的集合,即ArrayList<Future<Boolean>>

本文中的示例為例:

Future<Iterable<Long>> futuresSequence = sequence(futures);

// block until the futures come back
Iterable<Long> results = futuresSequence.get();

您似乎正在嘗試編寫期貨,但是您為正確執行嵌套錯誤的方式嵌套了收藏和期貨。 嘗試改用IterableFuture ,然后在此future上調用get

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM