加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 约束两个作业不能在Quartz-Scheduler中同时运行

发布时间:2020-12-14 19:19:37 所属栏目:Java 来源:网络整理
导读:在Quartz-Scheduler中,是否可以定义关于作业的执行约束? 实际上,我有两个实现接口Job的类:JobA和JobB. JobA将每分钟安排一次. JobB将每小时安排一次. 我不希望JobA和JobB同时运行. 注意:JobA和JobB不会做同样的事情. 谢谢你的回答. 最佳答案 没有直接的支

在Quartz-Scheduler中,是否可以定义关于作业的执行约束?

实际上,我有两个实现接口Job的类:JobA和JobB.

JobA将每分钟安排一次.
JobB将每小时安排一次.

我不希望JobA和JobB同时运行.

注意:JobA和JobB不会做同样的事情.

谢谢你的回答.

最佳答案
没有直接的支持.如果它是相同的工作,您可以将其定义为有状态 – 这样的作业不能同时运行定义.

否则,您可以将Quartz工作线程的数量限制为1,另外您可以定义线程优先级以选择首先运行哪个作业.不幸的是,当涉及更多工作时,此解决方案将无法扩展.

最后,您可以手动实现此操作,而无需涉及Quartz.我想你不希望同时访问某些操作或某些资源.考虑锁定该方法/资源,以便两个作业同时运行,但一个阻塞并等待另一个完成.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读