我使用 jsr-352 编写工作并将其部署在 wildfly 上。如何在最后一个结束时间之后安排一项延迟的作业,如下面的时间线,其中=
是执行时间和-
延迟时间:
===============--=====--========--
注意:作业执行的最大数量为 1
我使用 jsr-352 编写工作并将其部署在 wildfly 上。如何在最后一个结束时间之后安排一项延迟的作业,如下面的时间线,其中=
是执行时间和-
延迟时间:
===============--=====--========--
注意:作业执行的最大数量为 1
JBeret ejb 调度程序支持重复间隔作业执行,在作业执行开始后具有固定的间隔持续时间或一定的延迟持续时间。当前不支持作业执行结束后的延迟。如果您的作业执行持续时间相对可预测,您可以在作业执行开始后使用间隔或延迟来近似它。
为了更好地控制这种工作调度,您可以尝试以下方法:
afterJob()
方法应该能够查找或注入TimerSchedulerBean
本地单例 EJB,并调用其org.jberet.schedule.TimerSchedulerBean#schedule
方法。作业侦听器负责创建 的实例org.jberet.schedule.JobScheduleConfig
,并在调用 ejb 业务方法时传递它。作业侦听器应该已经拥有要创建的所有信息JobScheduleConfig
。