Moh*_*s A 0 java quartz-scheduler
如果这个问题太幼稚,我很抱歉,我希望作业被调度,以便它一个一个地执行,而不是并行执行。它只执行一次。
从文档中,@DisallowConcurrentExecution 是
但是当我使用相同的 JobKey 安排工作时,我得到了
Failed to schedule a job org.quartz.ObjectAlreadyExistsException
如果我生成一个不同的 JobKey,它就不会注意到,@DisallowConcurrentExecution并且该作业将并行执行(如文档中所述)。
请建议我如何实现这一点,任何指针都会真正有帮助!
PS:我不知道会安排哪些工作。所以,如果作业已经在运行,我需要一些方法来动态链接作业。
相同JobKey=相同的工作。
不同JobKey=不同的工作。
Quartz 不会让你JobKey多次使用相同的,因为那将是两个具有相同键的作业。就像有两个具有相同 ID 的用户一样。
您需要做的是JobTrigger为相同的JobKey.
@DisallowConcurrentExecution避免同一作业的重叠执行。如果您使用不同的JobKey,则不再是同一个工作,因此注释没有任何效果。但是对于JobKey具有多个JobTriggers的给定@DisallowConcurrentExecution,如果前一个尚未完成,将阻止触发器启动新的作业执行。
我建议查看Quartz 的文档以更深入地了解上述概念。
| 归档时间: |
|
| 查看次数: |
4546 次 |
| 最近记录: |