假设我有一个主管,它链接了 2 个演员。当我的应用程序关闭时,我想优雅地关闭这些演员。调用 supervisor.shutdown() 会停止所有演员还是我仍然需要手动停止演员?
格雷西亚斯
假设我有一个主管,它链接了 2 个演员。当我的应用程序关闭时,我想优雅地关闭这些演员。调用 supervisor.shutdown() 会停止所有演员还是我仍然需要手动停止演员?
格雷西亚斯
停止监督者(调用Supervisor.stop()
)会停止所有链接(监督)的参与者:
final class SupervisorActor{
...
override def postStop(): Unit = shutdownLinkedActors
但是,当您想优雅地关闭系统中的所有参与者时,还有另一种正确的方法可以做到这一点,即使用参与者注册表(保存有关系统范围内所有参与者的信息):
Actor.registry.shutdownAll