Essential Windows Workflow Foundation既WF本质论;
第3章 活动的执行
概念:有限状态机、调度器工作队列、调度器、先进先出(FIFO)、非抢占式
3.1调度
3.2活动自动机
3.2.1活动的执行状态和结果:
枚举类型:ActivityExecutionStatus,ActivityExecutionResult
3.2.2活动执行上下文:ActivityExecutionContext,代表了当前正在执行的活动的执行上下文。
3.2.3活动的服务:ActivityExecutionContext作为服务的提供者。
3.3回顾书签
由Ivoke<T>创建的书签是由WF运行时内部管理的,因为Invoke<T>方法在创建书签的同时也恢复了它。
3.3.1 WF程序的执行
3.3.2 WF程序队列
任何需要外部实体输入的活动,都必须解决两方面的问题:第一,必须让外部实体知道该活动需要输入消息;第二,当输入到达时,接收通知。
WF程序队列是一个可寻址的占位点,外部实体可以把数据发送到这里。
WF程序队列扮演着外部实体和WF程序实例中活动中之间通信
管道的角色。一个活动(以及它的外延-WF程序)可以创建任意多个不同WF程序队列。
3.3.3计时器
3.4活动的初始化和终结化
3.5组件活动的执行
3.6WF线程
3.7本章小结
第4章 活动执行的进队话题
4.1 执行上下文
AEC分类为:
1、服务的容器
2、是一个API界面,通过AEC中的一组API,活动能和WF运行时内部的调度器组件进行交互。
3、延续性代表了恢复执行所需要的完整的程序实状态,包括WF运行时的相关内部执行状态(运行时状态)以及用户自定义状态(应用程序状态)。
书签的恢复点称为执行句柄(execution handler),称执行名柄所需要的(分配在堆上的)执行状态为执行上下文(exectution context),在通常情况下,执行句柄是一个活动中的方法,所以我们又称执行上下文为活动执行上下文(activity execution context)。
WF编程模型允许复合活动在WF程序实例执行期间,显示地创建次级执行上下文(subordinate execution context)。
创建和管理执行上下文的API可以在ActivityExecutionContextManager类型中找到,也叫执行上下文管理器(execution context manager)简称AECManager。