summaryrefslogtreecommitdiff
path: root/test/files/jvm/future-termination.scala
blob: 90ea336ce8ef52c2cfa6015ab89f6748c70fa3ee (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* Test that unevaluated futures do not prevent program termination */


@deprecated("Suppress warnings", since="2.11")
object Test {
  import scala.actors.Futures
  def main(args: Array[String]) {
    try {
    val meaningOfLife = Futures.future {
      Thread.sleep(5000) // pretend this is a harder problem than it is
      println("I have the answer!")
      42
    }
    println("I can't wait that long, bye.")
    } catch {
      case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
        e.printStackTrace()
    }
  }
}