Java线程池:ExecutorService,Executors
2015-02-21 16:06
441 查看
简单的Java线程池可以从Executors.newFixedThreadPool( int n)获得。此方法返回一个线程容量为n的线程池。然后ExecutorService的execute执行之。
现给出一个示例。
运行的输出结果:
现给出一个示例。
package zhangphil.executorservice; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class ZhangPhilExecutorService { // 为了容易理解线程池的概念,假设容量只有2的线程池。 // 实际使用过程中当然可以更多! private final int NUMBER = 2; public ZhangPhilExecutorService() { // 创建容量为2的线程池。 ExecutorService pool = Executors.newFixedThreadPool(NUMBER); for (int i = 0; i < 10; i++) { Thread t = new TestThread(i); System.out.println("线程池执行线程id:" + i); pool.execute(t); } // 关闭线程池。 pool.shutdown(); } private class TestThread extends Thread { private int id; public TestThread(int id) { this.id = id; } @Override public void run() { System.out.println("线程:" + id + " -> 运行..."); try { Thread.sleep(5000); } catch (Exception e) { e.printStackTrace(); } System.out.println("线程:" + id + " -> 结束!"); } } public static void main(String[] args) { new ZhangPhilExecutorService(); } }
运行的输出结果:
线程池执行线程id:0 线程池执行线程id:1 线程池执行线程id:2 线程池执行线程id:3 线程:0 -> 运行... 线程池执行线程id:4 线程:1 -> 运行... 线程池执行线程id:5 线程池执行线程id:6 线程池执行线程id:7 线程池执行线程id:8 线程池执行线程id:9 线程:1 -> 结束! 线程:0 -> 结束! 线程:2 -> 运行... 线程:3 -> 运行... 线程:3 -> 结束! 线程:2 -> 结束! 线程:4 -> 运行... 线程:5 -> 运行... 线程:4 -> 结束! 线程:5 -> 结束! 线程:6 -> 运行... 线程:7 -> 运行... 线程:7 -> 结束! 线程:6 -> 结束! 线程:8 -> 运行... 线程:9 -> 运行... 线程:9 -> 结束! 线程:8 -> 结束!
相关文章推荐
- Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,Completion
- Android(java)的线程池:ExecutorService和Executors简单介绍
- Java线程池:ExecutorService,Executors
- Android(java)的线程池:ExecutorService和Executors简单介绍
- java并发库之Executors常用的创建ExecutorService的几个方法说明
- java并发库之Executors常用的创建ExecutorService的几个方法说明
- java android ExecutorService 线程池解析
- java并发库之Executors常用的创建ExecutorService的几个方法说明
- Java ExecutorService Example – Tutorial(java线程池)
- java并发库之Executors常用的创建ExecutorService的几个方法说明
- Java&Android的线程池---ExecutorService
- Java ExecutorService 线程池
- 运用JAVA的concurrent.ExecutorService线程池实现socket的TCP和UDP连接
- Java&Android的线程池ExecutorService
- [Java线程] Java线程池ExecutorService
- java并发库之Executors常用的创建ExecutorService的几个方法说明
- java ExecutorService 线程池
- 《java.util.concurrent 包源码阅读》10 线程池系列之AbstractExecutorService
- Android的线程池:ExecutorService和Executors
- Java线程池介绍(ExecutorService)