1、为定时任务分配线程池-定时任务异步执行方式
@Configuration
@EnableScheduling
public class RateScheduleConfig implements SchedulingConfigurer {
@Override
public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
taskRegistrar.setScheduler(taskExecutor());
}
@Bean(destroyMethod="shutdown")
public Executor taskExecutor() {
return Executors.newScheduledThreadPool(5);
}
}
或
1). 类名前加注解
@EnableAsync 代替原来的方式@
EnableScheduling
2). 方法前添加注解
@Async
测试发现,两个注解缺一不可。