java - 在 quartz 调度程序中以固定延迟安排?

标签 java quartz-scheduler

我开发了一个工作,我想每 5 分钟运行一次,但在某些情况下,工作完成时间可能会超过 5 分钟。

我正在使用 quartz scheduler 通过 cron 表达式来安排我的工作。有什么方法可以告诉 quartz 调度程序暂停下一次作业,直到第一个作业完成?

我正在寻找类似于 -

private static final ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
executor.scheduledWithFixedDelay(..);

最佳答案

使用 StatefulJob .来自文档:

stateful jobs are not allowed to execute concurrently, which means new triggers that occur before the completion of the execute(xx) method will be delayed.

关于java - 在 quartz 调度程序中以固定延迟安排?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5063482/

相关文章:

java - 如何在exec-maven-plugin中手动指定java路径

java - Spring 中的 quartz 作业尚未启动

java - Quartz Scheduler 测试场景不工作

java - Quartz Scheduler - 使用 JobDataMap 进行作业链

java - 使用包的 Eclipse 问题

java - Tomcat 9 中的编码问题 "The valid characters are defined in RFC 7230 and RFC 3986"

java - 如何使用 Maven 将 JAR 包含在 WAR 存档 WEB-INF/lib 中?

java - 在Java中的scala.collection.immutable.Vector中间添加元素

java - 服务器重启期间的 Quartz 调度程序

java - 如何使用 Spring Quartz 运行多个作业并从数据库获取作业