【发布时间】:2018-02-11 15:49:14
【问题描述】:
我有一个包含此导入的 scala 文件
import scala.concurrent.ExecutionContext.Implicits.global
这很好用,因为我正在使用的 Future 在该文件中的方法中运行良好。但是,我创建了一个单独的方法用于磁盘 IO,并且我有一个新的执行上下文。我希望这个方法使用这个上下文,而其他方法可以继续使用默认上下文。我怎么保证?我目前这样做如下
private def testContext():Future[Int] = {
val system = ActorSystem.create()
implicit val myexecutionContext = system.dispatchers.lookup("blocking-io-dispatcher.db-backup-context")
Future{logger.error("inside my new thread pool wonderland");10}{myexecutionContext}
有没有办法在每次 Future 调用结束时不指定这样的“myexecutionContext”,我可以让这个方法仍然对所有 Future 调用使用“myexecutionContext”?简而言之,我不想在我的“testContext”方法中一次又一次地指定“myexecutionContext”作为参数。我该怎么做?
【问题讨论】: