我试图对目录中的每个文件同时运行一个函数。可悲的是,每当我使用 Futures 时,我的程序都不想终止(永远运行)。我尝试过使用Await.result()相同的结果:/
运行代码时,它执行得很好,甚至“完成?” 被打印然后挂起......
这是我的代码。(我是 Scala 新手)
val execService = Executors.newFixedThreadPool(3)
implicit val execContext = ExecutionContext.fromExecutorService(execService)
val futures = for (file <- filesList) yield Future {
println(file)
// theFunc(file)
}
val seq = Future.sequence(futures)
seq.onComplete {
case Success(x) => println("finish?")
case Failure(e) => println(e)
}
Run Code Online (Sandbox Code Playgroud)