我用SpringBoot集合Quartz创建的定时任务为什么有时候不执行呢,也不报错
我用SpringBoot集合Quartz创建的定时任务为什么有时候不执行呢,也不报错,难道和线程并发有关?因为我的项目有好多定时器在跑,但是每个定时器基本都有自己的线程池,那为啥我的定时任务不执行呢,我在测试过程过,发现大部分不执行都是在我,删除一个定时任务后重新添加一个任务,新的任务就不执行了。这是为啥呢?
新增代码:
// 启动调度器
JobDetail jobDetail = JobBuilder.newJob(IotSchedulerTime.class).withIdentity(jobDetailName,jobDetailGroup).usingJobData("command", command).usingJobData("jobDetailName",jobDetailName).build();
// 表达式调度构建器(即任务执行的时间)
CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(cron);
// 按新的cronExpression表达式构建一个新的trigger
CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(triggerName,triggerGroup).withSchedule(scheduleBuilder).build();
scheduler.start();
scheduler.scheduleJob(jobDetail, trigger);
`
删除代码:
TriggerKey triggerKey = TriggerKey.triggerKey(triggerName, triggerGroup);
scheduler.pauseTrigger(triggerKey);// 停止触发器
scheduler.unscheduleJob(triggerKey);// 移除触发器
scheduler.deleteJob(JobKey.jobKey(jobDeatailName, jobDetailGroup));// 删除任务
~~~~`
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
贴下代码吧
Talk is cheap. Show me the code.
我贴了一下 代码 帮忙看看 各位
请问处理了么?