scala - 在scala中同时导入ExecutionContext.global和ExecutionContext.Implicits.global
问题描述
我有以下测试用例:
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.global
和ExecutionContext.Implicits.global
解决方案
你为什么不试试这个
import scala.concurrent.ExecutionContext.Implicits.{ global => ImplicitsGlobal }
import scala.concurrent.ExecutionContext.global
推荐阅读
- c# - 如何从其他程序集访问资源
- java - CompletableFuture 完成后修改 HashMap
- android - 提交可搜索查询后,Pip 正在关闭
- python - pydantic @validate_arguments 对于非内置类型(如 pandas DataFrame)的最佳实践
- selenium - Selenium:无法访问 cookie 横幅 html
- docker - 反向代理 Nginx 背后的詹金斯不断重定向到应用程序
- javascript - 如何使插件 slick.autocolumnsize.js 适应版本 slickgrid.js 2.4
- optaplanner - 链式计划变量中非链式计划变量的 valueRange
- pivot-table - 不同时间段销售的产品的一对多关系
- php - 检查用户是否在聊天室 Laravel