diff options
author | Philipp Haller <hallerp@gmail.com> | 2011-12-07 16:51:55 +0100 |
---|---|---|
committer | Philipp Haller <hallerp@gmail.com> | 2011-12-07 16:51:55 +0100 |
commit | 4ea25c98d377b6b0369fa20aa9d4bfd3a3223ef6 (patch) | |
tree | 305eb48d4c7c6c672b9db6ef9f4a065d10400223 /src/library/scala/concurrent/ExecutionContext.scala | |
parent | 4b62e8059c1f0f8cb4624291b0aa64e6e460948e (diff) | |
download | scala-4ea25c98d377b6b0369fa20aa9d4bfd3a3223ef6.tar.gz scala-4ea25c98d377b6b0369fa20aa9d4bfd3a3223ef6.tar.bz2 scala-4ea25c98d377b6b0369fa20aa9d4bfd3a3223ef6.zip |
Add future method to ExecutionContext trait. Log uncaught exceptions to stderr.
Diffstat (limited to 'src/library/scala/concurrent/ExecutionContext.scala')
-rw-r--r-- | src/library/scala/concurrent/ExecutionContext.scala | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/library/scala/concurrent/ExecutionContext.scala b/src/library/scala/concurrent/ExecutionContext.scala index d54b6c370e..9606c28bab 100644 --- a/src/library/scala/concurrent/ExecutionContext.scala +++ b/src/library/scala/concurrent/ExecutionContext.scala @@ -12,24 +12,22 @@ trait ExecutionContext { def execute(task: Runnable): Unit - def task[T](task: () => T): Task[T] + def task[T](task: => T): Task[T] def promise[T]: Promise[T] + def future[T](body: => T): Future[T] = { + val t = task(body) + t.start() + t.future + } + /** Only callable from the tasks running on the same execution context. */ def blockingCall[T](body: Blockable[T]): T } -object ExecutionContext { - - lazy val forNonBlocking = new ForkJoinExecutionContext - - //lazy val forBlocking = new BlockingExecutionContext - -} - sealed trait CanBlock |