-1

我已经实现了一个包含特征的actix演员Supervised。然后我尝试使用有监督的方式启动演员

let _: Addr<Unsync, _> = Supervisor::start(|_| MyActor::default());

不幸的是,当那个演员停止时,由于某种原因它不会自动重新启动。


依赖版本

actix = "0.5"
4

1 回答 1

0

actix 的作者 Nikolay Kim 帮我分析了这个问题。事实证明,将Supervisor::start()结果分配给一个名为的变量_会自动丢弃结果,因此主管实际上不会正确启动。

此问题的解决方案是将_变量重命名为_addr

let _addr: Addr<Unsync, _> = Supervisor::start(|_| MyActor::default());

重命名后,演员停止后Supervisor正确地重新启动。MyActor

于 2018-05-25T09:59:04.610 回答