发送给正在部署的Actors的消息会发生什么?

vic*_*aba 3 deployment actor dead-letter akka

我有一个非常简单的问题,但我没有在互联网上找到任何东西(也许我不知道如何搜索它).

如果我部署一个actor(actorSystem.actorOf ...)并立即向它发送消息,如果尚未部署Actor,那么消息将被排队到"特殊"队列中,或者消息是否会被发送到DeadLetters ?

jus*_*nhj 5

看一下邮箱文档的底部.您的猜测是正确的,邮件存储在特殊队列中,直到邮箱准备就绪.

为了使system.actorOf同步和非阻塞同时保持返回类型ActorRef(以及返回的ref完全起作用的语义),对这种情况进行特殊处理.在幕后,构建了一个空洞的actor参考,它被发送给系统的守护者,他实际上创建了actor及其上下文并将它们放在引用中.在此之前,发送到ActorRef的消息将在本地排队,只有在交换真正的填充时,它们才会被转移到真实邮箱中.

演员邮箱