在springboot启动类中添加入下配置
@SpringBootApplication
@EnableScheduling
@MapperScan("com.bestvike.court.dao")
public class BvZxPayCourtApplication {
public static void main(String[] args) {
SpringApplication.run(BvZxPayCourtApplication.class, args);
}
@Bean
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
//线程池
@Bean(name = "actvUnlockedTaskExecutor")
public ThreadPoolTaskExecutor actvUnlockedTaskExecutor() {
ThreadPoolTaskExecutor poolTaskExecutor = new ThreadPoolTaskExecutor();
//线程池维护线程的最少数量
poolTaskExecutor.setCorePoolSize(80);
//线程池维护线程的最大数量
poolTaskExecutor.setMaxPoolSize(300);
//线程池所使用的缓冲队列
poolTaskExecutor.setQueueCapacity(100);
//等待线程执行完成
poolTaskExecutor.setWaitForTasksToCompleteOnShutdown(true);
//线程池维护线程所允许的空闲时间
poolTaskExecutor.setKeepAliveSeconds(100);
//线程池对拒绝任务的处理
poolTaskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
poolTaskExecutor.initialize();
return poolTaskExecutor;
}
}
使用方法:
1.注入到类中
@Qualifier("actvUnlockedTaskExecutor")
@Autowired
private ThreadPoolTaskExecutor threadPoolTaskExecutor;
2.添加如下代码
Runnable runnable = new Runnable() {
@Override
public void run() {
//想要添加的方法
}
};
threadPoolTaskExecutor.submit(runnable);