创建排队活动:从基础到自定义服务的全面指南
1. 活动生命周期与核心概念
排队活动以生命周期和线程为核心,实现排队活动需要了解更多内部操作。下面介绍两个重要概念:
- WorkflowQueue :所有主机与工作流的通信都基于 WorkflowQueue 类型。它是一个命名位置(或队列),可以响应事件并接收数据。当命名队列被触发时,运行时会定位与之关联的工作流实例。如果该实例已脱水存储,运行时会重新激活它并将数据传递给实例。在使用外部数据交换、Web 服务和 Windows 通信基础进行通信时,实际接收事件的命名队列对用户是隐藏的。但在处理多突发活动时,需要直接使用命名队列。
- ActivityExecutionContext :是活动执行的容器。许多自定义活动操作需要访问 Execute 方法中接收的 ActivityExecutionContext 参数。自定义活动使用它的原因如下:
- 访问运行时注册的开箱即用和自定义运行时服务。
- 允许多突发活动的逻辑在不同线程上处理,同时活动将控制权返回给运行时。
- 出于架构和维护原因,将逻辑从执行方法转移到可访问的服务中。
- 在处理复合活动时,访问和控制子活动。
- 在处理多突发和复合活动时,调用其 CloseActivity 方法。
- 创建自定义活动时,生成唯一的 ActivityExecutionContext 并将其放入集合中。
超级会员免费看
订阅专栏 解锁全文
1218

被折叠的 条评论
为什么被折叠?



