package org.springblade.common.config; import org.springframework.context.annotation.Bean; import org.springframework.core.task.TaskExecutor; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.ThreadPoolExecutor; /** * 异步处理配置文件 * @author zhongrj * @since 2022-02-22 */ @EnableAsync public class AsyncConfig { @Bean public TaskExecutor executor(){ ThreadPoolTaskExecutor executor=new ThreadPoolTaskExecutor(); //核心线程数 executor.setCorePoolSize(10); //最大线程数 executor.setMaxPoolSize(20); //队列大小 executor.setQueueCapacity(1000); //线程最大空闲时间 executor.setKeepAliveSeconds(300); executor.setThreadNamePrefix("fsx-Executor-"); //指定用于新创建的线程名称的前缀。 executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); //返回 return executor; } }