1、Executors 创建可固定数量的线程newFixedThreadPool 代码如下

public class ExecutorsDemo {

public static void main(String[] args) throws Exception, ExecutionException {

ExecutorService fixedThreadPool = Executors.newFixedThreadPool(5);

for(int i=0;i<10;i++){

fixedThreadPool.execute(new MyRunable());

}

}

}


class MyRunable implements Runnable{


@Override

public void run() {

System.out.println(Thread.currentThread().getName());

}

}

我们循环创建10个线程,查看运行结果如下

Executors 创建可固定数量的线程newFixedThreadPool_创建


2、由以上结果可以看出,由于 Executors.newFixedThreadPool(5) 设置了5个线程,所以运行过程只会创建5个线程来执行所有的任务