【发布时间】:2016-11-24 05:27:03
【问题描述】:
我想简化我的for comprehension 代码,使其尽可能简单。
这里是代码
case object Message
class SimpleActor extends Actor {
def receive = {
case Message => sender ! Future { "Hello" }
}
}
object SimpleActor extends App {
val test = ActorSystem("Test")
val sa = test.actorOf(Props[SimpleActor])
implicit val timeout = Timeout(2.seconds)
val fRes = for {
f <- (sa ? Message).asInstanceOf[Future[Future[String]]]
r <- f
} yield r
println {
Await.result(fRes, 5.seconds)
}
}
有没有可能去掉这部分
.asInstanceOf[Future[Future[String]]]
?
【问题讨论】: