我正在使用Quartz Scheduler运行一些预定作业。我的应用程序中的所有作业都是 JobDetailBean 作业。
我知道使用MethodInvokingJobDetailFactoryBean,我们可以像这样非并发地创建一个作业:
<property name="concurrent"><value>false</value></property>
我想知道如何使JobDetailBean作业非并发。 JobDetailBean 作业默认同时运行。
要求是:jobA需要每5分钟运行一次,但前提是它的前一个实例已经完成。
谢谢,
Shikha
答案 0 :(得分:4)
您的工作类需要实现StatefulJob
,或者,如果您使用的是Quartz 2.x,请使用@DisallowConcurrentExecution
进行注释。
这是Quartz中可以控制并发执行的方式,特别是MethodInvokingJobDetailFactoryBean
只使用不同的作业类,具体取决于concurrent
的值。