Quartz中是否有一种机制可以在启动另一个作业时删除现有作业?我需要暂停其他工作的原因是因为新工作需要所有资源可用,这仅在其他工作未运行时才会生效。
以下是一个例子:
我有2个工作:工作A和工作B
工作A持续一整天。 工作B每24小时执行一次。
有可能在作业B运行时删除或暂停作业A.
答案 0 :(得分:1)
如果您的作业实现InterruptableJob
,那么您可以通过调用Quartz调度程序上的interrupt(jobKey)
来中断作业B中的作业A.
的Javadoc:
http://www.quartz-scheduler.org/api/2.2.1/index.html
http://www.quartz-scheduler.org/api/2.2.1/org/quartz/Scheduler.html#interrupt(org.quartz.JobKey)
示例: