1.线程池的用法不作介绍,本文直接调试jdk7线程池源码,来介绍执行具体流程。
客户端代码
public static void main(String[] args) throws InterruptedException {
ExecutorService executorService = Executors.newFixedThreadPool(1);
executorService.execute(new Runnable() {
@Override
public void run() {
System.err.println("业务执行");
}
});
}
进入Executors工具类的 newFixedThreadPool 方法来构造线程池。
这里new了一个ThreadPoolExecutor类(线程池核心实现类),nThreads值为1。接下来:
构造函数,构造之后里面字段的值如下(画红色的需要关注下):