【问题标题】:How to monitor actor system termination如何监控actor系统终止
【发布时间】:2016-11-15 07:06:10
【问题描述】:

我已经创建了我的根actor:

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

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

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

【问题讨论】:

  • 我自己从未与演员合作过,但我对演员的理解是让单个演员崩溃,但保持系统正常运行。因此,可能没有简单的解决方案。我很好奇人们是否有解决方案。

标签: c# .net akka akka.net


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-03
    相关资源
    最近更新 更多