Java多线程

java 线程池简记

2019-12-06  本文已影响0人  _正心_

参数配置:

- corePoolSize:核心线程数。默认创建后一直存在,可以设置为超时销毁。

- queueCapacity:任务队列容量。核心线程已满时,任务将被加入队列。

- maxPoolSize:最大线程数。当线程数超过核心线程数且队列已满,将开启新线程。若达到最大线程数,将抛错并拒绝处理任务。

- keepAliveTime:即允许的线程空置时间。

- allowCoreThreadTimeout:允许核心线程超时。即允许核心线程在等待一段时间后销毁。

线程池图解

四大经典线程池类型:

固定数量(Fixed):线程数量固定为核心线程数也是最大线程数,队列容量、线程等待时间无效。队列容量 Integer.MAX_VALUE。

不定数量(Cached):所有线程都是非核心线程,最大线程数为 Integer.MAX_VALUE。队列为同步队列。

单线程(Single):同一时间只有一个任务执行,保证任务顺序执行。队列容量 Integer.MAX_VALUE。

延迟执行(Scheduled):使用延迟队列缓存任务,最大允许线程数为 Integer.MAX_VALUE。

上一篇下一篇

猜你喜欢

热点阅读