我有几个石英(2.2)工作正在运行。假设一个人运行5秒钟,另一个运行每10分钟一次。
我不希望同时执行2个作业。我见过这个
DisallowConcurrentExecution
但这仅适用于来自同一实例的作业,但我通常不希望两个作业(任何实例)重叠。
修改 所有作业都使用一个数据库,因此这就是为什么它们不能同时运行的重要性。每项工作都有不同的事情要做。
答案 0 :(得分:3)
最简单的方法是将底层线程池配置为使用一个线程,这将实现您的目标。将以下属性添加到quartz.properties配置文件中:
org.quartz.threadPool.threadCount
可用的线程数 并发执行作业。你可以指定任何正整数, 虽然只有1到100之间的数字是实用的。如果你只是 有一些工作,每天开几次,然后一个线程 充足的。如果你有成千上万的工作岗位,每个工作岗位都有很多工作 分钟,然后你想要一个更像50或100的线程数(这个高度 取决于你的工作表现的工作性质,以及你的工作 系统资源)。