边儿上的小人您要嫌碍事儿,可将鼠标放在上头,边上底下有个叉,点一下就收起来了

【Java】@Scheduled常用的注解的使用

@Scheduled注解的使用

cron

cron这个参数必须要接受一个cron表达式

cron表达式是个啥呢,Cron表达式是一个具有时间含义的字符串,字符串以5个空格隔开,分为6个域,格式为 X X X X X X 。 其中 X 是一个域的占位符。单个域有多个取值时,使用半角逗号, 隔开取值。 每个域可以是确定的取值,也可以是具有逻辑意义的特殊字符

 //这个就是在每次凌晨1点的时候执行
@Scheduled(cron = "0 0 1 * * ?")

cron表达式语法自行百度,应该很多

或者找个网站,像是这个https://cron.qqe2.com/

fixedDelay

简单来说,就是在上一次执行完以后再过一个参数的时间以后再次执行,它的间隔时间是根据上次的任务结束的时候开始计时的

 //这个就是在上一次执行完以后再过半个小时再次执行
@Scheduled(fixedDelay = 30 * 60 *1000)

像上面的就是,当这个方法在一次执行结束后,开始进行时间的计算,然后再计算时间达到半个小时的时候,就开始再次执行该方法

fixedRate

这个和fixedDelay类似,但又不是一样的,它的间隔时间是根据上次任务开始的时候计时的

 //这个就是在上一次开始的时间点以后数半个小时再次执行
@Scheduled(fixedRate = 30 * 60 *1000)

比如说,一个方法上设置了fiexdRate = 30 * 60 *1000,那么在执行这个方法的时候,假如说这个方法执行了十分钟,那么下次执行这个方法就是在这个方法结束之后的二十分钟后再次执行,而不是说半个小时

不过这个有的时候会堵塞,如果前一个没有执行完,后一个就已经开始了,那么就是堵塞,慢慢的就堵了,走一个下一个接着执行,不会在此等待了

initialDelay

简单来说,作用就是在一个延迟执行的操作,先延迟一段时间以后再进行定时操作

//在第一次的时候首先延迟10秒,然后再执行,执行完第一次以后就开始之后按fixedRate的规则进行定时操作,每15秒执行一次
@Scheduled(initialDelay=10000, fixedRate=15000) 
posted @   DbWong_0918  阅读(674)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示