Scala 保持主线程运行,同时等待&x27;没有完成
我有以下代码:Scala 保持主线程运行,同时等待&x27;没有完成,scala,Scala,我有以下代码: val f1: Future[Unit] = Future { Thread sleep 5 println(1) } val f2: Future[Unit] = Future { Thread sleep 10000 println(2) } def main(args: Array[String]): Unit = async { await(f1) await(f2) } 我希望主线程在最后一个a
val f1: Future[Unit] = Future {
Thread sleep 5
println(1)
}
val f2: Future[Unit] = Future {
Thread sleep 10000
println(2)
}
def main(args: Array[String]): Unit = async {
await(f1)
await(f2)
}
我希望主线程在最后一个await
方法终止后终止
我该怎么做呢?既然
async/await
产生了一个未来
,你也需要等待它
import scala.concurrent.Await
import scala.concurrent.duration._
def main(args: Array[String]): Unit = {
val future = async {
await(f1)
await(f2)
}
Await.result(future, Duration.Inf)
}