关于quartz定时java程序

ighack 2019-10-17 04:19:50
我想问一下我用quartz做一个定时任务。
希望在上次任务执行完成以后,在延迟5分钟开始执行。
如:
第一次在12:00:00开始执行行。用了3分钟,那么第二次执行时是在12:08:00开始执行。而不是在12:05:00开始执行
具体代码怎么写啊
...全文
137 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiawenhe123 2019-12-04
  • 打赏
  • 举报
回复
这都是框架的基本功能啊,建议先阅读一下文档,找个简单的例子试验一下,你就会使用了。 建议再学习一下spring el表达式。以后你要使用的功能多了去了,如果一开始不能掌握学习的 方法,那么以后就更是举步维艰了。
ighack 2019-12-03
  • 打赏
  • 举报
回复
引用 4 楼 天地炫舞 的回复:
你思考问题的方式错了,你这是一个定时任务,不是两个定时任务。 原因: 假如,“第一次在12:00:00开始执行行。用了3分钟,那么第二次执行时是在12:08:00开始执行。而不是在12:05:00开始执行”,那么也就是说你第二次任务是在第一次执行结束后立即执行的。那么你这是一个定时任务,不是两个定时任务。 换句话说,你只需要一个定时任务是12:00:00开始,然后他结束了,直接调用下一次任务,不需要再定时了。
我是一个任务。只是需要在第一次执行完毕以后。在过5分钟执行。而不是这个任务每隔5分钟执行一次
天地炫舞 2019-10-17
  • 打赏
  • 举报
回复
你思考问题的方式错了,你这是一个定时任务,不是两个定时任务。 原因: 假如,“第一次在12:00:00开始执行行。用了3分钟,那么第二次执行时是在12:08:00开始执行。而不是在12:05:00开始执行”,那么也就是说你第二次任务是在第一次执行结束后立即执行的。那么你这是一个定时任务,不是两个定时任务。 换句话说,你只需要一个定时任务是12:00:00开始,然后他结束了,直接调用下一次任务,不需要再定时了。
浪费七年时间 2019-10-17
  • 打赏
  • 举报
回复
引用 2 楼 浪费七年时间 的回复:
单独使用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
貌似@Scheduled注解的配置对Quartz无效。。。。。。
浪费七年时间 2019-10-17
  • 打赏
  • 举报
回复
单独使用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
ninuxGithub 2019-10-17
  • 打赏
  • 举报
回复
不知道你是否只需要2个执行任务的节点12:00:00,12:08:00 ; 假如是的话: 那么简单写2个schedule 方法 采用不同的cron 如果是 连续的调用 可以写一个schedule 方法里面调用该方法里面采用ScheduledExecutorService.scheduleAtFixRate

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧