activiti学习之task与execution的关系
一.含义task 即待办任务execution 即流程执行线路,或者执行环境当流程中没有分支时,Execution等同于ProcessInstance,甚至连ID也相同;当流程中存在分支(fork, parallel gateway),则在分支口会形成子Execution,在下一个gateway才会合并(joined)。二.关系从数量上来说,task是始终小于等于execu
·
一.含义
task 即待办任务
execution 即流程执行线路,或者执行环境
当流程中没有分支时,Execution等同于ProcessInstance,甚至连ID也相同;
当流程中存在分支(fork, parallel gateway),则在分支口会形成子Execution,在下一个gateway才会合并(joined)。
二.关系
从数量上来说,task是始终小于等于execution,每个task总是对应一个execution。而execution不一定对应一个task。
从级别上来说,execution相当于task的执行环境,execution是包含task的
三.执行过程中的变化
假如有这么一个流程:
1 . 开启新流程,创建一个新的主干execution,并且主干execution对应的当前节点为A
2. A节点审批通过
a. 更新主干节点为第一个InclusiveGetway
b. 创建两个新的execution
c.创建待办B和C,分别关联对应executionB 和C
3. B节点审批通过
a.更新executionB当前节点为第二个inclusiveGetway
4.C节点审批通过
a.更新executionC 当前节点为第二个inclusiveGetway
b.删除executionB
c.删除executionC
d.更新主干execution节点为D
5.D节点审批通过
a.删除主干execution
总结
execution其实就是分支的执行线。
有的文章说task与execution是一对一的关系,这个是不准确的,应该是execution和分支是一对一的关系,有多少个分支就有多少个execution。
task 即待办任务
execution 即流程执行线路,或者执行环境
当流程中没有分支时,Execution等同于ProcessInstance,甚至连ID也相同;
当流程中存在分支(fork, parallel gateway),则在分支口会形成子Execution,在下一个gateway才会合并(joined)。
二.关系
从数量上来说,task是始终小于等于execution,每个task总是对应一个execution。而execution不一定对应一个task。
从级别上来说,execution相当于task的执行环境,execution是包含task的
三.执行过程中的变化
假如有这么一个流程:
1 . 开启新流程,创建一个新的主干execution,并且主干execution对应的当前节点为A
2. A节点审批通过
a. 更新主干节点为第一个InclusiveGetway
b. 创建两个新的execution
c.创建待办B和C,分别关联对应executionB 和C
3. B节点审批通过
a.更新executionB当前节点为第二个inclusiveGetway
4.C节点审批通过
a.更新executionC 当前节点为第二个inclusiveGetway
b.删除executionB
c.删除executionC
d.更新主干execution节点为D
5.D节点审批通过
a.删除主干execution
总结
execution其实就是分支的执行线。
有的文章说task与execution是一对一的关系,这个是不准确的,应该是execution和分支是一对一的关系,有多少个分支就有多少个execution。
更多推荐
已为社区贡献2条内容
所有评论(0)