[英]Reducing a list of futures
我有一個長時間運行的函數,它返回一個未來,如下所示:
def longRunningFunction(signs: List[String], numOfWords: Int)
: Future[List[(String, Int)]] = Future{ /* computation */ }
我需要減少 Future 的輸出,如下所示:
val all = (6 to 24).map(i => longRunningFunction(signs, i))
.reduce(_ ::: _)
但這似乎不起作用。 有什么想法嗎?
Future.reduceLeft(futures)(_ ::: _)
這是你要找的東西嗎?
def longRunningFunction(signs: List[String], numOfWords: Int): Future[List[(String, Int)]] = ???
val all: IndexedSeq[Future[List[(String, Int)]]] = (6 to 24).map(i => longRunningFunction(signs, i))
val result: Future[IndexedSeq[(String, Int)]] = Future.sequence(all).map(_.flatten)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.