背景
全部为单线程的情况
fixedDelay:
@Scheduled(fixedDelay = 3 * 1000)
在上一个任务执行完成之后,间隔3秒后,执行下一个任务
也就是说每个任务之间的间隔时间是3秒
cron:
@Scheduled(cron = "0/5 * * * * ? ")
每5s执行一次,
也就是说,时间点过5秒就要执行一个任务(如果这个点没有正在运行的任务)
fixedRate:
@Scheduled(fixedRate = 5 * 1000)
正常情况下,每隔5秒执行一个任务,如果有任务没有正常执行完,要立即执行来补错过的点