1. 程式人生 > >Java Executor併發框架(四)建立執行緒池的核心引數的解釋

Java Executor併發框架(四)建立執行緒池的核心引數的解釋

private final BlockingQueue<Runnable> workQueue;              // 任務阻塞佇列

private final ReentrantLock mainLock = new ReentrantLock();   // 互斥鎖

private final HashSet<Worker> workers = new HashSet<Worker>();// 執行緒集合.一個Worker對應一個執行緒

private final Condition termination = mainLock.newCondition();// 終止條件

private int largestPoolSize;           // 執行緒池中執行緒數量曾經達到過的最大值

private long completedTaskCount;       // 已完成任務數量

private volatile ThreadFactory threadFactory;     // ThreadFactory物件,用於建立執行緒。

private volatile RejectedExecutionHandler handler;// 拒絕策略的處理控制代碼

private volatile long keepAliveTime;   // 執行緒池維護執行緒所允許的空閒時間

private volatile boolean allowCoreThreadTimeOut;//是否允許核心執行緒也會timeout,預設是false

private volatile int corePoolSize;     // 執行緒池維護執行緒的最小數量,哪怕是空閒的

private volatile int maximumPoolSize;  // 執行緒池維護的最大執行緒數量

其中有幾個重要的規則需要說明一下: