默认线程池:
使用方式:
开启异步任务,在启动类上使用注解@EnableAsync启动异步任务,在需要异步执行的任务上使用@Async标注该方法为异步任务。
执行任务效果:
自定义线程池:
使用方式:
创建线程池配置类,对线程池核心线程数量、最大线程数量、空闲线程数量、任务队列以及拒绝策略的设置,在线程池配置类上使用@Configuration进行配置文件装配,对需要异步执行的任务上标明线程池名称即可使用指定的线程池执行任务,不标注则为默认线程池执行。
//@Configuration
public class TheadPoolTaskConfig {
// 核心线程数
private static final int corePoolSize = 20;
// 最大线程数
private static final int maxPoolSize = 50;
// 允许线程空闲时间
private static final int keepAliveTime = 10;
// 缓冲队列大小
private static final int queueCopcity = 200;
// 线程池前缀
private static final String threadNamePrefix = "Xyamc-Thread-Service-";
@Bean("xyamcTaskExcutor")
p