我想运行我未来的电话 n 次,例如 5。未来的“执行”将需要一些时间,我只想在前一个完成时调用新的。就像是:
def fun(times: Int): Future[AnyRef] = {
def _fun(times: Int) = {
createFuture()
}
(1 to times).foldLeft(_fun)((a,b) => {
println(s"Fun: $b of $times")
a.flatMap(_ => _fun)
})
}
所以我想一一调用“_fun”函数n次。“createFuture()”需要一些时间,所以在前一个未来完成之前不应再次调用“_fun”。另外,我想创建一个非阻塞解决方案。目前,此代码无需等待先前的未来结束即可执行。
任何想法如何使它工作?
感谢您的回答!