参考连接:html
https://www.cnblogs.com/jiangxiulian/p/7443983.htmlspa
1. corePoolSize: 核心线程数
缺省值为1线程
- 核心线程会一直存活,即便没有任务须要执行
- 当线程数小于核心线程数,即便有空闲线程,线程池也会优先建立新线程处理
- 设置allowCoreThreadTimeout=true(默认false)时,核心线程会超时关闭
2. queueCapacity: 任务队列容量(阻塞队列)
当核心线程数达到最大时,新任务会放在队列中排队等待执行htm
3. maxPoolSize: 最大线程数
- 当前线程数 >= corePoolSize, 且任务对列已满时,线程池会建立新线程来处理任务
- 当前线程数 = maxPoolSize, 且任务对列已满时, 线程池会拒绝处理任务而抛出异常
4. keepAliveTime: 线程空闲时间
- 当空闲时间达到keepAliveTime时,线程会退出,直到线程数量等于corePoolSize
- 若是allowCoreThreadTimeout=true, 则线程会退出,直到线程数量等于0
5. allowCoreThreadTimeout:容许核心线程超时
缺省是falseblog
6. rejectedExecutionHandler: 任务拒绝处理器
- 当线程数达到maxPoolSize, 且队列已满,会拒绝新任务
- 当线程池调用shutdown()和线程池真正shutdown之间提交的任务会被拒绝。