并发执行时,activiti taskService完成失败

时间:2018-04-25 12:29:06

标签: alfresco activiti

嗨我正面临一个奇怪的情况,我试图将一组任务同时设置为完成。

第一个通过,第二个通过(很少),但大部分都没有通过。 当我单独做这些时,他们就会工作。 我觉得与数据库锁定有关。是否有一些解决方法或代码同时执行任务和变量更新?

2 个答案:

答案 0 :(得分:0)

它们属于同一个流程实例吗? 是的,将有一个数据库锁定机制,因为当您完成每个任务时,流程实例将需要继续前进。 你能澄清一下你想要解决的问题吗?你的业务情况是什么?

干杯

答案 1 :(得分:0)

Activiti使用抢先锁定,这可能会导致并行任务出现问题。 通常,如果您使用“独占”标记,问题就会消失(https://www.activiti.org/userguide/#exclusiveJobs)。

请记住,作业从不实际并行运行,作业引擎选择要运行的作业,如果有多个,它们将按顺序运行(这似乎与用户平行)。