你思考问题的方式错了,你这是一个定时任务,不是两个定时任务。 原因: 假如,“第一次在12:00:00开始执行行。用了3分钟,那么第二次执行时是在12:08:00开始执行。而不是在12:05:00开始执行”,那么也就是说你第二次任务是在第一次执行结束后立即执行的。那么你这是一个定时任务,不是两个定时任务。 换句话说,你只需要一个定时任务是12:00:00开始,然后他结束了,直接调用下一次任务,不需要再定时了。
单独使用Quartz的话不清楚,Spring Task Scheduled的fixedDelay设置(注意不是fixedRate)就是在上一次任务结束后开始计时,支持JDK Timer和Quartz两种方式,你可以用Spring整合Quartz,再使用Spring提供的定时任务配置来指定fixedDelay https://docs.spring.io/spring/docs/5.2.0.RELEASE/spring-framework-reference/integration.html#scheduling
62,614
社区成员
307,327
社区内容
加载中
试试用AI创作助手写篇文章吧