执行上下文

执行上下文

FuturePromise 的计算任务放在 ExecutionContext 中执行。一个 ExecutionContext 相当于一个执行器,它会将计算任务放在新线程或者线程池中执行,也可以放在当前线程中执行,不过不推荐。

scala.concurrent 提供了一个 ExecutionContext 的实现,一个全局的静态线程池,它也可以将 Executor 转换成 ExecutionContext

当然我们也可以通过继承 ExecutionContext 来自定义执行上下文。

全局执行上下文

ExecutionContext.globalForkJoinPool 提供,它能满足我们大多数情况下的需求,但是也需要注意一些情况。