spring之并发线程池 ThreadPoolTaskExcutor
#一 先说一些关键性的东西。 当 PoolSize<CorePoolSize 时增加 PoolSize; 当队列大小 < QueueCapacity 时由当前线程池执行 workQueue.offer(command); 当 PoolSize >= CorePoolSize && PoolSize<MaxPoolSize 时,且队列大小 >=QueueCapacity 时,新增线程数量,但大小必须 < MaxPoolSize. KeepAliveTime 是线程是否退出的衡量时间,但核心线程是否退出还要看 allowCoreThreadTimeOut else if (poolSize > corePoolSize || allowCoreThreadTimeOut) r = workQueue.poll(keepAliveTime, TimeUnit.NANOSECONDS); #二 下面是重点,Spring 中 ThreadPoolTaskExcutor ##1 异步配置类,为下边的异步注入提供配置 @EnableAsync @Configuration @ComponentScan("org.sselab.conf") public class TaskConfig implements AsyncConfigurer { @Override public Executor