Akka:ActorRef已解决,但消息被发送给其他actor(其子)

时间:2016-06-24 12:31:06

标签: scala akka actor

我得到一个像这样的演员:

context
  .actorSelection(sender.path.parent)
  .resolveOne()
  .map { actorRef =>
     println("selfSender = " + self.path)
     println("actorRefOfReceiverInSender = " + actorRef)
     actorRef ! MyMessage()
 }

输出(我确定应用程序中没有其他日志):

selfSender = akka://application/user/get-facebook-event
actorRefReceiverInSender = Actor[akka://application/user/events-by-place-supervisor#105204402]

所以一切似乎都好。

问题是在正确的actor中没有收到消息:events-by-place-supervisor(由resolveOne方法找到)但在其子节点中显示来自子节点的以下日志:

selfChild = akka://application/user/events-by-place-supervisor/get-events-by-places
senderInChild = Actor[akka://application/user/get-facebook-event#1400767854]

所以它来自好的发送者,但接收者不是resolveOne方法找到的接收者,而是它的孩子。
actorRef ! MyMessage()如何才能将消息发送给actorRef引用的优秀演员呢?

0 个答案:

没有答案