SpringBoot中定时任务配置多线程执行

Spring定时任务在不配置ThreadPool的时候,默认是按照1个线程执行的。

如果系统中配置了多个定时任务,定时任务的执行就会按照列队进行执行。这样执行效率会很慢,可能对Cron配置的存在影响。

SpringBoot中定时任务配置多线程执行

/**
 * 多线程执行定时任务
 */
@Configuration
public class ScheduleConfig implements SchedulingConfigurer {
    private Logger logger = LoggerFactory.getLogger(ScheduleConfig.class);
    
    @Override
    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
        
        logger.info("定时任务配置3个线程。");
        
        taskRegistrar.setScheduler(Executors.newScheduledThreadPool(3));
    }

}

添加之后,定时任务就是以3个线程进行执行。

原文地址:https://www.cnblogs.com/se7end/p/9522426.html