activiti job处理

异步任务:数据会写在act_ru_job

定时事件:数据会写在act_ru_timer_job

暂停的工作: 比如流程中有一个定时任务,如果把这个任务停止工作了,这个任务会在act_ru_suspended_job中写入数据

无法执行工作表: 如果一个任务执行了很多次,都无法执行,那么这个任务会写到act_ru_deadletter_job

下面异步执行的例子

1. 继承类
public class MyServiceDelegate implements JavaDelegate {

	@Override
	public void execute(DelegateExecution execution) throws Exception {
		System.out.println("this is 处理类");
		
	}
}

2. 修改bpmn文件,修改成异步处理,添加处理的类
  <serviceTask id="servicetask1" name="Service Task" activiti:aasync="true" 
    activiti:class="com.boot.security.server.MyServiceDelegate"></serviceTask>

3. 修改主配置文件,开启异步执行
<property name="asyncExecutorActivate" value="true"></property>

4. 启动当前工作注,会触发我们自定义的MyServiceDelegate,流程会流转到下一个节点

5. 中断任务
runtimeService.suspendProcessInstanceById(pi.getId()); //中断流程实例,这个时候会在act_ru_suspended_job表中添加一个中断任务

6. 再重新激活这个流程实例
runtimeService.activateProcessInstance(pi.getId()); 激活后会把数据再放会act_ru_timer_job表中





猜你喜欢

转载自blog.csdn.net/ldqchat/article/details/81837121
今日推荐