在scala中同时导入ExecutionContext.global和ExecutionContext.Implicit



我有以下测试用例:

test("test future") {
import scala.concurrent.ExecutionContext.global
import scala.concurrent.ExecutionContext.Implicits.global
case class Result(value: String)
val f = Future {
println("Start future")
Thread.sleep(1000)
println("End future")
Result("The Job is finished")
}
f.onComplete({
case Success(r) => println(r.value)
case Failure(ex) => ex.printStackTrace()
})

//Hold the test thread
Thread.sleep(3000)
}

存在编译错误,抱怨Cannot find an implicit ExecutionContext

但是如果我从代码中删除import scala.concurrent.ExecutionContext.global, 然后它起作用了。

我会问为什么如果我同时导入ExecutionContext.globalExecutionContext.Implicits.global

不起作用

你为什么不试试这个

import scala.concurrent.ExecutionContext.Implicits.{ global => ImplicitsGlobal }
import scala.concurrent.ExecutionContext.global

相关内容

  • 没有找到相关文章

最新更新