问题描述
我有一个使用@Scheduled的方法,它设置为每10秒运行一次,如下所示:
@Scheduled(fixedDelay = 1000 * 10)
如果该方法要花费10秒钟以上的时间,是否会并行开始另一个执行?还是会等待当前执行完成?
解决方法
不会,因为fixedDelay
的工作方式如下:
以固定的周期(以毫秒为单位)执行带注释的方法 在上一次调用结束与下一次调用之间。
意思是它等待功能完成,然后等待n毫秒,直到再次调用该功能。
,它会一直等到之前的执行完成为止,直到我查看了它的文档并将其写在那上面
以固定的周期(以毫秒为单位)执行带注释的方法 在上一次调用结束与下一次调用之间。
这是我见过的Spring Doc。