當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Scala Future.traverse用法及代碼示例


traverse 方法(或屬性)屬於 scala.concurrent.Future 對象(object),其相關用法說明如下。

用法:

final def traverse[A, B, M <: (IterableOnce)](in: M[A])(fn: A => Future[B])(implicit bf: BuildFrom[M[A], B, M[B]], executor: ExecutionContext): Future[M[B]]

使用提供的函數 A => Future[B] 異步且非阻塞地將 IterableOnce[A] 轉換為 Future[IterableOnce[B]].這對於執行並行映射很有用。例如,要將函數並行應用於列表的所有項目:

val myFutureList = Future.traverse(myList)(x => Future(myFunc(x)))

類型參數:

A

集合中 Futures 內的值的類型

B

返回的值的類型Future

M

Futures 集合的類型

值參數:

fn

要在集合上映射的函數以生成期貨集合

in

要使用提供的函數映射的集合以生成 Futures 集合,然後將其排序為 Future 集合

返回:

結果集合的Future

源碼:

Future.scala

相關用法


注:本文由純淨天空篩選整理自scala-lang.org大神的英文原創作品 Future.traverse。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。