【发布时间】:2023-03-06 02:51:01
【问题描述】:
我使用异步库的以下方法:
def myMethod(param: Long, isTru: Boolean): Future[Option[MyType]] = async {
if (isTru) {
val promise = Promise[Option[MyType]]
val myFuture = doSomething(param)
myFuture.onComplete {
case Success(succ) => {
promise.success(Some(MyType(param, succ)))
}
case Failure(fail) => promise.failure(fail)
}
promise.future // fails here
}
else {
None
}
}
编译失败,错误如下:
[error] found: scala.concurrent.Future[Option[MyType]]
[error] required: Option[MyType]
我不明白?
【问题讨论】: