4

これは期待どおりに機能します。

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)
}

最初のケースでは、アプリケーションは正常に終了しますが、2 番目のケースでは終了しません。ただし、両方のバージョンで結果値が正しく出力されます。

これはバグですか、それとも私が理解していないことがありますか?

4

1 に答える 1