Camunda BPM执行和变量范围误解

时间:2016-12-07 15:12:52

标签: java bpm camunda

我使用camunda BPM流程引擎并认为理解一些概念很重要。目前,我对Process ExecutionsVariable Scopes的概念进行了一些努力。

为了理解在流程执行期间发生的事情,我设计了以下演示过程,并使用相同的颜色标记了同一执行中的活动。我可以这样做,因为我调试了每个活动中的执行ID。

enter image description here

我理解其中的大部分内容。让我感到惊讶的是输入参数打开一个新的执行(任务1.3)。感谢meyerdan澄清此事。

我不明白的是“任务2.2”在“任务2.1”的同一执行中。关于执行的camunda文档中的quote

  

在内部,流程引擎创建两个并发执行   在流程实例中,每个并发路径一个   执行。

所以我会看到任务2.1 /任务2.2和任务3.1都存在于自己的执行中。

有人能解释一下吗?

我理解这一点的主要动机是它对过程变量范围的影响。到目前为止我还没弄清楚Java API方法是什么

VariableScope#getVariable / VariableScope#setVariable

VariableScope#getVariableLocal / VariableScope#setVariableLocal

真的做。我首先想到的是“Local”变体只引用当前执行而其他只引用流程实例执行 - 但这似乎只是一半的真相。这些是getter和setter,我痛苦地想念JavaDoc ;-) 奖励点也可以解释这个!

谢谢!

您将在Maven项目中找到具有GitHub可执行JUnit测试的流程。

0 个答案:

没有答案