仅供参考!
线程池就是一工厂不是,一个工人就是一个Thread,你可以用三种方式(见代码)决定请几个工人干活。如果有活了这些工人就开干(就是线程自动到线程池中去拿任务执行),如果没订单了,就没活可干了工人就休息着吃闲饭。如果你不想他们吃闲饭就赶走。(就用 threadPool.shutdown()关闭线程池)。- //创建固定线程个数的线程池。
- //ExecutorService threadPool = Executors.newFixedThreadPool(3);
- //创建线程个数动态变化的线程池,有多少任务就多少线程,再来则动态增加。
- //ExecutorService threadPool = Executors.newCachedThreadPool();
- //创建单个线程的线程池,这个池子中的这个线程如果死了,就会自动创建一个新的Thread接替他。
- ExecutorService threadPool = Executors.newSingleThreadExecutor();
复制代码 |
|