1.线程池配置文件(依个人、环境而定)
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.Executor; import java.util.concurrent.ThreadPoolExecutor; @Configuration public class ThreadPoolConfig{ //参数初始化 private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors(); //核心线程数量大小 private static final int corePoolSize = Math.max(2, Math.min(CPU_COUNT - 1, 4)); //线程池最大容纳线程数 private static final int maxPoolSize = CPU_COUNT * 2 + 1; //阻塞队列 private static final int workQueue = 20; //线程空闲后的存活时长 private static final int keepAliveTime = 30; @Bean("asyncTaskExecutor") public Executor getAsyncExecutor() { ThreadPoolTaskExecutor threadPoolTaskExecutor = new ThreadPoolTaskExecutor(); //核心线程数