我正在使用 Monix Scheduler 定期执行一些任务。但我不知道如何不仅执行它们,还从它们收集结果到某个集合......假设我有一个计划任务,每次都返回一个随机数:
val task = Task { Math.random() }
implicit val io: SchedulerService = Scheduler.io()
task.map(_ + 2).map(println).executeOn(io).delayExecution(1.seconds).loopForever.runAsyncAndForget
从理论上讲,我可以在任务执行之前创建可变和并发task.map
列表,并且可以将结果放入该列表中……但我听说使用可变的、线程之间共享的集合根本不是最佳实践。 .. 有什么好方法可以收集所有预定的任务结果吗?我应该使用什么工具以适当的 scala 惯用方式实现这一目标,避免可变集合?