如何监控actor系统终止

时间:2016-11-15 07:06:10

标签: c# .net akka akka.net

我创建了我的根演员:

        topicRootActor = actorSystem.ActorOf(actorSystem.DI().Props<RootActor>(), typeof(RootActor).Name + '.' + topic);
        topicRootActor.Tell(initMessage);

当它由于永久连接失败或其他原因而停止时,我想停止应用程序。

我的想法是停止root actor,然后在PostStop覆盖中调用Context.System.Terminate。问题是ActorSystem的创建者将如何知道演员系统终止?

1 个答案:

答案 0 :(得分:1)

我相信你应该能够使用actorSystem.WhenTerminated,这是ActorSystem上的一个属性,它返回一个Task,当ActorSystem关闭时它就会完成。

如果您对此进行了延续,或等待它,您应该能够干净地关闭您的应用程序。