@Configuration public class ExecutorConfig { /** Set the ThreadPoolExecutor's core pool size. */ private int corePoolSize = 10; /** Set the ThreadPoolExecutor's maximum pool size. */ private int maxPoolSize = 100; /** Set the capacity for the ThreadPoolExecutor's BlockingQueue. */ private int queueCapacity = 100; @Bean("commonTaskExecutor") public Executor commonRunsAsync() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePoolSize(corePoolSize); executor.setMaxPoolSize(maxPoolSize); executor.setQueueCapacity(queueCapacity); executor.setThreadNamePrefix("common---"); // rejection-policy:当pool已经达到max size的时候,如何处理新任务 // CALLER_RUNS:不在新线程中执行任务,而是有调用者所在的线程来执行 executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy()); executor.setKeepAliveSeconds(60); executor.initialize(); return executor; } }
Async 配置线程池
猜你喜欢
转载自www.cnblogs.com/fqybzhangji/p/10880804.html
今日推荐
周排行