如何解决询问结果后不等待的模式
我有一个akka演员按顺序做一些事情,可以这样总结:
def receive = {
case Request(...) => {
val id = generatedId()
sender() ! id
doSomeOtherStuffs()
}
}
使用某些 ask 模式
调用演员val id = myActor ? Request(...)
这里的问题是代码调用我的演员正在等待所有doSomeOtherStuffs()
事情完成。
允许演员回覆然后调用代码停止等待该演员的正确方法是什么?
解决方法
这个怎么样?将其他内容的实际执行与回答请求分离开来
def receive = {
case Request(...) => {
val id = generatedId()
sender() ! id
self ! DoSomethingElse(...)
}
case DoSomethingElse(...) =>
doSomethingElse()
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。