gpt4 book ai didi

FLOWABLE:如何更改异步作业的 5 分钟默认间隔

转载 作者:行者123 更新时间:2023-12-02 02:40:33 25 4
gpt4 key购买 nike

我假设 DefaultAsyncJobExecutor 是默认选择作为 AsyncExecutor 接口(interface)实现的类(不确定这个假设是否正确)

所以基本上我想修改一个异步作业的默认超时时间,默认超时时间是5分钟,也就是两个变量的值:

timerLockTimeInMillis, asyncJobLockTimeInMillisAbstractAsyncExecutor.java**

我尝试使用各自的 setter 方法更改这两个值,并尝试直接修改我的自定义实现的构造函数中的值,如下所示:

public class AsyncExecutorConfigImpl extends DefaultAsyncJobExecutor
{
// @Value( "${async.timeout.duration}" )
private int customAsyncJobLockTimeInMillis = 10 * 60 * 1000;

AsyncExecutorConfigImpl()
{
super();
setTimerLockTimeInMillis( this.customAsyncJobLockTimeInMillis );
setAsyncJobLockTimeInMillis( this.customAsyncJobLockTimeInMillis );
super.timerLockTimeInMillis = this.customAsyncJobLockTimeInMillis;
super.asyncJobLockTimeInMillis = this.customAsyncJobLockTimeInMillis;
}
}

但值保持不变,因为超时仍然在 5 分钟后发生。

初始化 是通过 API 完成的,例如 start-new-process-instance,在此 API 中,以下代码用于启动流程实例

->像这样异步启动工作流程过程实例 (processInstanceName, processInstanceId)

ProcessInstance lProcessInstance = mRuntimeService.createProcessInstanceBuilder()
.processDefinitionId( lProcessDefinition.get().getId() )
.variables( processInstanceRequest.getVariables() )
.name( lProcessInstanceName )
.predefineProcessInstanceId( lProcessInstanceId )
.startAsync();

->完成后,工作流的其余部分将涉及服务任务,并且当一个实例正在执行时,我猜会发生超时并重新启动实例

-> 因为我配置了一个监听器,所以我能够在日志中看到启动事件事件每 5 分钟后启动一次

例如:事件 1 是第一个事件,然后该事件将在 5 分钟后重新开始(持续时间显示在控制台日志中)

不确定,我现在缺少什么,如果需要任何其他详细信息,请告诉我

最佳答案

如果 jar 文件不在您的控制之下,您不能更改 count 的默认值,因为在 jar 类中已编译。您只能更改对象内部的值,因此您可以 super 关键字:

class CustomImplementation extends DefaultExecutedClass{
private int custom_count=1234;

CustomImplementation(){
super();
super.count = this.custom_count;
}

}

否则如果你真的需要更改原始文件,你必须从 jar 中提取它

关于FLOWABLE:如何更改异步作业的 5 分钟默认间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59775128/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com