0

我正在从一个演员发送一条消息来杀死另一个演员。接收者actor执行context.system.shutdown。尽管 actor 完美地接收到消息并执行 case 语句中指定的代码,但它只是不会关闭。出了什么问题?

接收者actor的接收方法。

def receive = {
  ...

  case "KILL" => context.system.shutdown
}
4

1 回答 1

0
case "KILL" => context.system.shutdown()

应该关闭整个演员系统。使用您提供的代码,我不明白为什么它不会。当您使用remote-actors标记您的问题时,我可以想象您可能有一些逻辑来在失败时重新启动远程参与者系统。

然而,仅仅杀死一个演员你不会关闭整个系统,而是停止一个演员:

case "KILL" => context.stop(self)
于 2015-09-13T07:35:09.377 回答