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个线程进行执行。

 

posted @ 2018-08-23 10:49  Se7end  阅读(1197)  评论(0编辑  收藏  举报