2013-03-04 67 views
6

有沒有一個優雅的方式來做一個演員的硬重啓 - 即清理郵箱以及內部狀態?Akka的硬啓動指令?

我知道這可以通過調用context.stop並重新初始化DeathWatch/Terminated消息來完成,但這有點笨重。

回答

5

不,清理郵箱正是通過終止角色完成的。如果你想在沒有終止語義的情況下嘗試,你怎麼能確定你清除了一切?新消息可能會在任何時候進入。

所以,要做到這一點很難重啓你

  • 回報從主管戰略
  • Stop指令,那麼一旦你收到演員的Terminated消息創建一個新的孩子。