顶级接口Execotor、ExecutorService实现了Executor接口并扩展了shutdown等方法,Executors提供多个静态方法实例化ThreadPoolExecutor,设置一个corePoolSize,当我们执行一个submit方法时候,会先判断是否达到corePoolSize,如果已经达到corePoolSize则会将该线程丢进队列中等待,如果是LinkedBlockingQueue阻塞队列的话会判断是否达到队列的最大数,如果达到了则会调用await开始阻塞等待被唤醒;如果是无限队列,则根据maxSize创建线程执行,达到了最大的maxSize之后采用拒绝策略。
java并发 - JUC之线程池的基础架构
于 2020-05-13 11:33:10 首次发布