这按预期工作:
object Planexecutor extends App {
import scalaz.concurrent.Future
import scala.concurrent.duration._
val f = Future.apply(longComputation)
val result = f.run
println(result)
}
这不会:
object Planexecutor extends App {
import scalaz.concurrent.Future
import scala.concurrent.duration._
val f = Future.apply(longComputation).timed(1.second)
val result = f.run
println(result)
}
在第一种情况下,应用程序正常退出,而在第二种情况下则不会。但是,两个版本都正确打印出结果值。
这是一个错误还是我不理解的东西?