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个线程,查看运行结果如下
2、由以上结果可以看出,由于 Executors.newFixedThreadPool(5) 设置了5个线程,所以运行过程只会创建5个线程来执行所有的任务