@Scheduled是不是已经是多线程
时间: 2023-11-21 07:56:57 浏览: 95
Spring boot如何通过@Scheduled实现定时任务及多线程配置
是的,@Scheduled已经是多线程的。在引用中的代码中,使用了@EnableAsync和ThreadPoolTaskScheduler来配置Scheduled为多线程执行。ThreadPoolTaskScheduler是一个基于线程池的TaskScheduler实现,它可以在多个线程中执行定时任务。而@Async注解则表示该方法是异步执行的,可以在多个线程中同时执行。因此,结合使用@EnableAsync和ThreadPoolTaskScheduler,@Scheduled就可以实现多线程执行了。
另外,引用中提到的SingleThreadScheduledExecutor是一个单线程的定时任务执行器,它只会使用一个线程来执行所有的定时任务,因此不适合需要同时执行多个定时任务的场景。
阅读全文