C# Akka.net如何在不等待当前消息完成的情况下阻止演员?

C# Akka.net如何在不等待当前消息完成的情况下阻止演员?,c#,akka.net,actor-model,C#,Akka.net,Actor Model,我想知道我是否可以在不必等待当前消息处理的情况下停止某个参与者,或者干脆取消它 这里解释了做这件事的方法 但它们都在等待处理当前消息 停止()演员: 结束后立即停止演员 正在处理当前消息 杀死演员: 这将抛出一个ActorKilledException,该异常将被记录和处理。演员会 处理完当前消息后立即停止 给演员送一颗毒药: 演员将完成对电影的处理 邮件当前位于其邮箱中,然后停止 我想问,为什么在actors消息接收中有一个长时间运行的流程。更好的做法是将可能需要一些时间并且您希望能够取消的

我想知道我是否可以在不必等待当前消息处理的情况下停止某个参与者,或者干脆取消它

这里解释了做这件事的方法

但它们都在等待处理当前消息

停止()演员:

结束后立即停止演员 正在处理当前消息

杀死演员:

这将抛出一个ActorKilledException,该异常将被记录和处理。演员会 处理完当前消息后立即停止

给演员送一颗毒药:

演员将完成对电影的处理 邮件当前位于其邮箱中,然后停止


我想问,为什么在actors消息接收中有一个长时间运行的流程。更好的做法是将可能需要一些时间并且您希望能够取消的代码放入消息接收范围内的任务中

然后,参与者将被释放,能够接受来自上面列出的停止方法之一的消息,并相应地终止任务


此外,下一页的第4点显示了一些示例代码

这是一个很好的提示,我没有想到将其封装到任务中,但可以很好地与CancellationToken配合使用:)谢谢!