首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Akka Actor ask和类型安全

Akka Actor ask和类型安全
EN

Stack Overflow用户
提问于 2012-11-30 00:46:00
回答 2查看 3.3K关注 0票数 17

如何使用Akka Actor ask和维护类型安全?或者避免使用ask而倾向于tells?

在Akka Actor上调用?ask时,会返回一个Future[Any],我必须通过future.mapTo[MyType]进行显式强制转换。

我不喜欢失去这个类型的安全性。如果我直接使用Futures (没有参与者),我可以显式地返回Future[MyType]并维护类型安全。

我的特定用例涉及一个参与者将其消息委托给两个子参与者,然后聚合来自这两个参与者的结果,并将结果返回给父参与者的发送者。我父母的接收方法类似于Akka文档中的这种方法:

http://doc.akka.io/docs/akka/2.0/scala/futures.html#For_Comprehensions

代码语言:javascript
运行
复制
val f1 = actor1 ? msg
val f2 = actor2 ? msg

val f3 = for {
  a ← f1.mapTo[Int]
  b ← f2.mapTo[Int]
  c ← ask(actor3, (a + b)).mapTo[Int]
} yield c

有没有更好的方法来实现我的用例?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13630585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档