文章插图
然后打开 , 将执行周期修改为每6秒执行一次 , 如图:
查看控制台 , 发现执行周期已经改变 , 并且不需要我们重启应用 , 十分方便 。如图:
注意:如果在数据库修改时格式出现错误 , 则定时任务会停止 , 即使重新修改正确;此时只能重新启动项目才能恢复 。
回到顶部
三、多线程定时任务
基于注解设定多线程定时任务
1、创建多线程定时任务
//@Component注解用于对那些比较中立的类进行注释;//相对与在持久层、业务层和控制层分别采用 @Repository、@Service 和 @Controller 对分层中的类进行注释@Component@EnableScheduling// 1.开启定时任务@EnableAsync// 2.开启多线程public class MultithreadScheduleTask {@Async@Scheduled(fixedDelay = 1000)//间隔1秒public void first() throws InterruptedException {System.out.println("第一个定时任务开始 : " + LocalDateTime.now().toLocalTime() + "\r\n线程 : " + Thread.currentThread().getName());System.out.println();Thread.sleep(1000 * 10);}@Async@Scheduled(fixedDelay = 2000)public void second() {System.out.println("第二个定时任务开始 : " + LocalDateTime.now().toLocalTime() + "\r\n线程 : " + Thread.currentThread().getName());System.out.println();}}
2、启动测试
启动应用后 , 查看控制台:
从控制台可以看出 , 第一个定时任务和第二个定时任务互不影响;
【spring boot 开启定时任务的三种方式】并且 , 由于开启了多线程 , 第一个任务的执行时间也不受其本身执行时间的限制 , 所以需要注意可能会出现重复操作导致数据异常 。
- Spring Cloud Netflix五大组件简介
- SpringBoot 2 使用 SpringCloud Netflix Eure
- 大汉馆陶公主:史上开启公主养男宠之风的奇女子
- 链游玩家带你开启未来游戏新模式:游戏资产上链
- oppo超感画质引擎要不要开启
- [初学Spring Boot](2):单元测试报错:org.junit
- 靖难之役朱棣夺位后开启永乐盛世还得归功于他
- 2023华为产品测评官活动火热开启——发出属于你的开发者之声,赢取丰厚奖品!
- Springboot 自定义mybatis 拦截器,实现我们要的扩展
- Spring动力节点老杜课程学习笔记