Java中的线程池模拟

老规矩,直接上代码,写的不好不要喷!

public class ThreadExecutrols {

public static void main(String[] args) {
//创建一个线程池,固定数量为3
//ExecutorService ex = Executors.newFixedThreadPool(3);
//创建单一的线程
//ExecutorService ex = Executors.newSingleThreadExecutor();
//利用缓存创建默认线程,在下次运用时就进行运用,这些线程的数量不是固定的
ExecutorService ex = Executors.newCachedThreadPool();
for (int i = 0; i < 10; i++) {
final int task =i;
ex.execute(new Runnable() {
@Override
public void run() {
for (int j = 0; j < 10; j++) {
System.out.println(Thread.currentThread().getName()+"执行第:"+task+"次的第"+j+"次循环");
}
}
});
}
ex.shutdown();
}
}

代码打印有点长,想试试可以copy运行一下

原文地址:https://www.cnblogs.com/zlazm/p/7896472.html