public class SimpleThreadPool implements ThreadPool {
/*
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
* Data members.
*
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
// 初始化线程数,对应配置文件里面的threadCount
private int count = -1;
// 线程优先级
private int prio = Thread.NORM_PRIORITY;
// 线程是否停止
private boolean isShutdown = false;
//
private boolean handoffPending = false;
private boolean inheritLoader = false;
private boolean inheritGroup = true;
private boolean makeThreadsDaemons = false;
private ThreadGroup threadGroup;
private final Object nextRunnableLock = new Object();
// 工作线程
private List<WorkerThread> workers;
// 可用线程
private LinkedList<WorkerThread> availWorkers = new LinkedList<WorkerThread>();
// 忙碌线程
private LinkedList<WorkerThread> busyWorkers = new LinkedList<WorkerThread>();
private String threadNamePrefix;
private final Logger log = LoggerFactory.getLogger(getClass());
private String schedulerInstanceName;