顺序取消不同参与者中多个任务的顺序

时间:2018-10-24 18:39:29

标签: c# multithreading azure-service-fabric service-fabric-actor

Actor依靠Cancellation Token来取消任务,该任务可以包装在Cancellation Token Source中。当单个工作流程中有多个参与者链时,取消请求可以传播到工作中的参与者链。

在终止未完成的作品之前,可以将每个参与者中的每个取消任务都注册到令牌中,以完成不同的工作。

这种情况是,最好以相反的顺序终止此工作链,以便产生最新的工作人员角色,例如发送批作品更新数据库,最好在其父角色抛出取消异常之前取消其工作。至少对我来说,这个计划似乎比在这个作品链的最顶端的演员抛出取消异常更为安全。

我在想以某种相反的方式注册这些取消工作(例如使用堆栈),以便执行最后一个注册的取消委托,然后执行紧随其后的第二个取消委托,依此类推。

将合并的委托人或堆栈与处理程序一起使用是考虑因素,请让我知道/纠正我,以指导我朝正确的方向前进。

0 个答案:

没有答案