线程池使用基本说明
1. public ThreadPoolExecutor(int corePoolSize, 2. int maximumPoolSize,
3. long keepAliveTime,
4. TimeUnit unit,
5. BlockingQueue<Runnable> workQueue,
6. ThreadFactory threadFactory,
7. RejectedExecutionHandler handler)
a.corePoolSize:线程池基本线程数,因为一般池的创建分为两种,一种是初始化的时候就进行创建默认的最小连数目,还有一种是当使用的时候才创建,直到创建的数目超过基本数值的时候,后面的获取,才根据池里面的数量空闲状态进行返回,在此之前,都是一直创建,直到超过基本值。
b.maximumPoolSize: 线程池最大容量
c.keepAliveTime: 线程活动保持时间 ,线程在池里面的空闲的时间,相当于外包人员,在长时间没有接到任务的时候,就让他离职!减少负担。
d.unit: 时间单位,这个可以参考TimeUtil 提供了很多精确的时间类型
e.workQueue: 工作队列,这里负责维护多个任务调度,比如当我们进网吧的时候是需要刷卡的,当人比较多的时候需要排队,而且同时还要应对结账的人员,这里用队列的方式进行管理。
f.threadFactory: 线程工厂,这里面提供了多种线程的创建方式
g:RejectedExecutionHandler: 饱和策略,和缓存池类似,我们不可能无限制的分配下去,当线程数量到最大值的时候,我们需要用一种策略进行处理。
以上是 线程池使用基本说明 的全部内容, 来源链接: utcz.com/z/513547.html