gpt4 book ai didi

Scala/Akka Future onComplete Success 编译器错误

转载 作者:行者123 更新时间:2023-12-04 22:31:22 24 4
gpt4 key购买 nike

我有一个等待 future 结果的 Actor 。调用 future 的 onComplete 会导致编译器错误:

error: constructor cannot be instantiated to expected type [scalac] found : akka.actor.Status.Success [scalac] required: scala.util.Try[Iterable[Any]] [scalac] case Success(result: List[PCBInstanceStats]) => { [scalac] ^



Actor 获得:
case "pcbStatus" => {
val future = Future.traverse(context.children)(x => {
(x ? "reportStatus")(5 seconds)
})

future.onComplete {
case Success(result: List[PCBInstanceStats]) => {
self ! result
}
}

不确定如何为此提供正确类型的参数。

最佳答案

[scalac] found : akka.actor.Status.Success 

这意味着编译器会看到您的 Success并认为这是一个 akka.actor.Status.Success ,当你真正的意思是 scala.util.Success .您可能在某处导入了 akka Success 类。

删除 akka.actor.Status.Success 的导入,或通过完全限定类或使用导入别名来解决歧义,例如
import scala.util.{Success => ScalaSuccess}

future.onComplete {
case ScalaSuccess(result) => ...
// or
case scala.util.Success(result) => ...
}

关于Scala/Akka Future onComplete Success 编译器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22967563/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com