基本模式(5个)
2、并行分支模式 – 同时运行两个活动
例子:
3、同步模式 – 同步两个并行的执行线程
4、单选模式 – 从多条路径中选择一个执行
5、简单合并模式 – 合并两个二选一路径
高级分支与同步模式(5个)
6、多选模式 – 从多条执行路径中选出几条
7、同步合并模式 – 合并多条路径,如果有多条路径被选择,则进行同步;如果只有一条路径被选择,则进行简单合并
8、多合并模式 – 合并多条路径
9、鉴别器模式 – 合并多条路径而不进行同步,只执行一次后续活动
10、M中的N模式 – 合并多条路径,进行部分同步,只执行一次后续活动
结构模式(2个)
11、任意循环模式 – 没有任何限制的执行工作流
12、隐含终断模式 – 如果没有事情可做,就结束
多实例模式(4个)
13、 Multiple Instances without Synchronization
注意看到这个模式,主要是用于表示实例之间的运行相互"非同步"的状态。按照普遍比较接受的说法是:N个实例之间相互独立而且并发执行,互不干扰。这类似于在程序上的进程/线程概念。
14、Multiple Instances with a Priori Design-Time Knowledge
这一模式是用于确立多实例的入口方式。入口主要处理的问题就是确定所需要生成的实例个数 N 。而这个 N 在设计流程的时候就确定了。
15、Multiple Instances with a Priori Run-Time Knowledge
入口方式也可以动态确定,这一模式是表示在流程运行的过程中,B 中第一个实例产生以前就确定 N 。当然了,确定这个N 的时机可以是前面 A,也可以是 A 前的工作任务。总之是在第一个实例产生前就确定下来的,也可以视作该模式的应用。
16、Multiple Instances without a Priori Run-Time Knowledge
与上面模式相反,是在 B 产生最后一个实例以前(或者所有实例合并以前),都可以产生新的实例,而且不限数量。
基于状态的模式(3个)
17、推迟选择模式 – 执行两个可选线程中的一个,那个线程将被执行是隐含的
18、交替并行模式 – 两个活动可以以任何顺序执行,但不能并行进行
19、里程碑模式 – 当一个里程碑到达时,激发一个活动
取消模式(2个)
20、取消活动 – 取消当前活动