自定义线程池-java内置线程池构造方法介绍
生活随笔
收集整理的這篇文章主要介紹了
自定义线程池-java内置线程池构造方法介绍
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Java內(nèi)置線程池原理剖析
我們要想自定義線程池,必須先了解線程池的工作原理,才能自己定義線程池;這里我們通過觀察java中ThreadPoolExecutor的源碼來學(xué)習(xí)線程池的原理;
ThreadPoolExecutor部分源碼
構(gòu)造方法:
public ThreadPoolExecutor(int corePoolSize, //核心線程數(shù)量int maximumPoolSize,// 最大線程數(shù)long keepAliveTime, // 最大空閑時(shí)間TimeUnit unit, // 時(shí)間單位BlockingQueue<Runnable> workQueue, // 任務(wù)隊(duì)列ThreadFactory threadFactory, // 線程工廠RejectedExecutionHandler handler // 飽和處理機(jī)制) { ... }java.util.concurrent
接口 ThreadFactory
public interface ThreadFactory
根據(jù)需要創(chuàng)建新線程的對象。使用線程工廠就無需再手工編寫對 new Thread 的調(diào)用了,從而允許應(yīng)用程序使用特殊的線程子類、屬性等等。
此接口最簡單的實(shí)現(xiàn)就是:
class SimpleThreadFactory implements ThreadFactory {public Thread newThread(Runnable r) {return new Thread(r);}}Executors.defaultThreadFactory() 方法提供了更有用的簡單實(shí)現(xiàn),即在返回線程前將已創(chuàng)建線程的上下文設(shè)置為已知的值。
?
總結(jié)
以上是生活随笔為你收集整理的自定义线程池-java内置线程池构造方法介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线程池应用场景介绍
- 下一篇: 自定义线程池-线程池工作流程介绍