2
다음은 지연 2 초 후에 계산을 실행하지만 앱을 실행할 때 절대 종료되지 않습니다. 앱을 종료하는 코드는 무엇입니까?timer.schedule을 호출 할 때 주 앱이 종료되지 않는 이유
object Test extends App{
import scala.concurrent._
import java.util._
import java.util.concurrent.{ TimeUnit }
val timer = new java.util.Timer()
def timeoutFuture[A](v: A, delay: Long, unit: TimeUnit): Future[A] = {
println("inner")
val p = Promise[A]()
println("inner")
timer.schedule(new java.util.TimerTask {
def run() {
p.success(v)
}
}, unit.toMillis(delay))
println("inner")
p.future
}
println("begin")
val x1=timeoutFuture[Int](1+1,2,TimeUnit.SECONDS)
println("end")
println("quit")
}
timeoutFuture의 def가 playframework에서 복사되었으므로 우리는 그것을 대체하기 위해 Akka 스케줄러를 사용할 수 있습니까? 프레임 워크/src/iteratees/src/main/scala/play/api/libs/iteratee/Concurrent.scala의 것입니다. –