diff options
author | Aleksandar Prokopec <axel22@gmail.com> | 2012-04-04 21:02:43 +0200 |
---|---|---|
committer | Aleksandar Prokopec <axel22@gmail.com> | 2012-04-04 21:02:43 +0200 |
commit | c2b081e5bd399dacba2e4a4cf6ad017b7406dfbd (patch) | |
tree | 9c70843314378c1b1aa57958dd1377d91f3d3caf /src/library/scala/concurrent/ExecutionContext.scala | |
parent | f2bc58ce1b81f23f92d484d9fbeb4575b45d4af3 (diff) | |
download | scala-c2b081e5bd399dacba2e4a4cf6ad017b7406dfbd.tar.gz scala-c2b081e5bd399dacba2e4a4cf6ad017b7406dfbd.tar.bz2 scala-c2b081e5bd399dacba2e4a4cf6ad017b7406dfbd.zip |
Add some ExecutionContext factories.
Diffstat (limited to 'src/library/scala/concurrent/ExecutionContext.scala')
-rw-r--r-- | src/library/scala/concurrent/ExecutionContext.scala | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/library/scala/concurrent/ExecutionContext.scala b/src/library/scala/concurrent/ExecutionContext.scala index 16d9a1f980..e1d4276396 100644 --- a/src/library/scala/concurrent/ExecutionContext.scala +++ b/src/library/scala/concurrent/ExecutionContext.scala @@ -11,7 +11,7 @@ package scala.concurrent import java.util.concurrent.atomic.{ AtomicInteger } -import java.util.concurrent.{ Executors, Future => JFuture, Callable } +import java.util.concurrent.{ Executors, Future => JFuture, Callable, ExecutorService, Executor } import scala.concurrent.util.Duration import scala.concurrent.forkjoin.{ ForkJoinPool, RecursiveTask => FJTask, RecursiveAction, ForkJoinWorkerThread } import scala.collection.generic.CanBuildFrom @@ -36,5 +36,20 @@ trait ExecutionContext { } +/** Contains factory methods for creating execution contexts. + */ +object ExecutionContext { + + implicit def defaultExecutionContext: ExecutionContext = scala.concurrent.defaultExecutionContext + + /** Creates an `ExecutionContext` from the given `ExecutorService`. + */ + def fromExecutorService(e: ExecutorService): ExecutionContext with Executor = new impl.ExecutionContextImpl(e) + + /** Creates an `ExecutionContext` from the given `Executor`. + */ + def fromExecutor(e: Executor): ExecutionContext with Executor = new impl.ExecutionContextImpl(e) + +} |