2014-03-28 79 views
0

是否有可能捕獲對actor的停止事件是否來自PoisonPill或context.stop()?從本質上講,我希望讓演員成爲()一個「死亡」的事件循環,以便我可以等待事情結束,然後在事情結束時調用正常關閉的context.stop(self)。這看起來好像是週期性的,所以我願意接受不同的方法。阿卡我可以重寫停止功能嗎?

我還應該問,有沒有辦法重寫父母關閉孩子的方式?

對不起,這裏有兩個問題。

回答

6

對這兩個問題的回答非常簡單:定義您自己的消息類型以啓動您的關機序列,並以您喜歡的任何方式在您的演員中處理該消息。

+0

Roland,謝謝你的回覆。我已經定義了我自己的「KillPill」消息,但是當一個演員在層次結構上關閉幾層時,這似乎成了一個問題。在這種情況下,通常會發送KillPill消息的actor只是在其子節點上執行context.stop。我希望能夠定義父母發送KillPill而不是默認功能,以便孩子們可以執行關閉順序。謝謝你的時間。 – kornstar11

+0

如果一個演員被強行關閉,那麼它的後代就無能爲力了:這是一箇中止操作。有序關機需要從上到下進行。 –

+0

很酷,謝謝你的時間:) – kornstar11