Scala我可以创造多少期货

时间:2014-03-25 09:09:34

标签: scala future reactive-programming

val iter = (1 to 1000).iterator.map { i =>
  accountService.getAccountDataSyncList(i, 200)
}.takeWhile(_.nonEmpty).flatten.map(acc => produceReport(acc.bindAccount))
Future.sequence(iter.toList)

我会迭代超过1到1000页的帐户并创建最多200 * 1000期货,

这会占用大量内存吗?

create all task as future then forget模式是否友好?

1 个答案:

答案 0 :(得分:1)

需要多少内存取决于每个回调成本的内存量以及您指定执行期货的线程数。