Akka路由器的路由发送Terminate消息给自己

时间:2015-06-04 11:44:06

标签: scala akka

我有一个创建路由器的actor。完成所有工作后,我想停止当前的演员,停止路由器和所有路由。

这是我停止层次结构的代码:

  // stopping children
  context.children foreach context.stop
  // stopping current actor
  context.stop(self)

但是在日志中我收到这样的消息:

  

消息[akka.dispatch.sysmsg.Terminate]从...到...不是   交付。 [5]遇到死信。

即。 routees将Terminate消息发送到itslef。

我认为问题与我停止演员的代码有关(上图)。

我该如何解决?

1 个答案:

答案 0 :(得分:1)

当你停止自我时,孩子会自动停止。所以只需使用context stop self