gpt4 book ai didi

java - 限制两个作业不能在 Quartz-Scheduler 中同时运行

转载 作者:搜寻专家 更新时间:2023-10-31 20:14:40 25 4
gpt4 key购买 nike

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

确实,我有两个实现接口(interface) Job 的类:JobA 和 JobB。

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

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

注意:JobA 和 JobB 做的事情不同。

感谢您的回答。

最佳答案

没有对此的直接支持。如果是同一个作业,您可以将其定义为有状态的 - 这样的作业不能同时运行。

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

最后,您可以在不涉及 Quartz 的情况下手动实现它。我猜你不希望同时访问某些操作或某些资源。考虑锁定该方法/资源,以便两个作业同时运行,但一个会阻塞并等待另一个完成。

关于java - 限制两个作业不能在 Quartz-Scheduler 中同时运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10655979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com