tell() 在 Akka actor 系统中如何工作?
How does tell() work in Akka actor system?
receive()
是一个不接受任何参数的方法,returns 是一个偏函数。 tell()
是 returns Unit
和 'sends' 消息的方法。现在要按照我的理解处理消息,必须发生两件事:
receive()
应该由 tell 调用
- 消息被传递给
receive()
返回的部分函数
现在如果部分函数返回到使用 tell()
的地方,那么基于消息的通信如何工作?为什么操作不在 actor 内部执行?
因为它是内部结构,所以没有文档,但您可以在此处自行查看源代码:https://github.com/akka/akka/blob/master/akka-actor/src/main/scala/akka/actor/ActorCell.scala。从 tell 如何将消息发送到邮箱、如何从中提取消息、如何调用 receive 等所有内部细节都在这里。
希望它能回答您的问题。
receive()
是一个不接受任何参数的方法,returns 是一个偏函数。 tell()
是 returns Unit
和 'sends' 消息的方法。现在要按照我的理解处理消息,必须发生两件事:
receive()
应该由 tell 调用
- 消息被传递给
receive()
返回的部分函数
现在如果部分函数返回到使用 tell()
的地方,那么基于消息的通信如何工作?为什么操作不在 actor 内部执行?
因为它是内部结构,所以没有文档,但您可以在此处自行查看源代码:https://github.com/akka/akka/blob/master/akka-actor/src/main/scala/akka/actor/ActorCell.scala。从 tell 如何将消息发送到邮箱、如何从中提取消息、如何调用 receive 等所有内部细节都在这里。
希望它能回答您的问题。