讨论/《Java 面试突击》 - 线程池/
《Java 面试突击》 - 线程池
共 3 个回复
  1. 设定线程数量,线程池中的线程不会销毁,等待下一个任务。
  2. 降低资源消耗,不需要频繁的创建和销毁,线程池中的线程不需要等待创建,可以直接执行任务,设定线程的数量,方便管理。
  3. <corePoolSize 创建并执行 >=corePoolSize 阻塞队列 <maximumPoolSize 非核心线程 >maximumPoolSize RejectExecutionException
  4. shutdown 正在执行的继续 shutdownNow 正在执行的停止 调用interrupt

阻塞队列满了以后,还会看线程数有没有大于maximumPoolSize,不大于会继续创建线程。

corePoolSize:核心线程数,定义了最少可以同时运行的线程数量。当线程池中的线程数量达到 corePoolSize 之后,到达的任务进入阻塞队列。难道不应该是定义了最多可以同时运行的线程数量吗?