“工作流线程”示例
此示例演示使用手动线程模型运行工作流或使用默认 CLR(公共语言运行库)线程模型运行工作流的不同之处。 它还演示了在工作流中使用 DelayActivity 活动所造成的线程影响。
这是一个控制台应用程序,设计用来演示在应用程序中使用单一线程来执行宿主和工作流(而不是为宿主和工作流使用多个线程)的不同之处。
此应用程序的目的是为了演示工作流实例的执行行为如何随所使用线程服务的不同而发生变化。 用于利用执行宿主线程的线程服务称为 ManualWorkflowSchedulerService。
ThreadMonitor 类的用途是用不同的颜色为每个线程的输出着色。
生成示例
通过单击**“下载示例”**来下载该示例。
这会将示例项目提取到本地硬盘。
单击**“开始”,依次指向“程序”和“Microsoft Windows SDK”,然后单击“CMD 外壳”[CMD Shell]**。
转到示例的源目录。
在命令提示符处键入 MSBUILD <解决方案文件名>。
运行示例
- 在 SDK 命令提示窗口中,运行 WorkflowThreading\bin\debug 文件夹(对于该示例的 VB 版本为 WorkflowThreading\bin 文件夹)中的 .exe 文件,该文件夹位于该示例的主文件夹下。
备注
此示例的语法如下所示:
WorkflowThreading.exe [Single | Multi] [Delay | WaitForMessage]
参数 | 行为 |
---|---|
Single |
使用与宿主应用程序相同的线程运行工作流。 |
Multi |
使用与宿主应用程序不同的线程运行工作流。 |
Delay |
在工作流执行路径中结合一个延迟过程。 这将触发计时器的执行。 |
WaitForMessage |
在工作流执行路径中结合一个事件。 这将使工作流强制进入空闲状态,并将执行控制返回给宿主应用程序 |
请参见
参考
DelayActivity
ManualWorkflowSchedulerService
DefaultWorkflowSchedulerService
其他资源
版权所有 (C) 2007 Microsoft Corporation。保留所有权利。