管理线程的线程池
来源:互联网 发布:程序员猝死 知乎 编辑:程序博客网 时间:2024/05/16 05:38
我们实现线程的一般方式是一个类实现Runnable接口,再new Thread(new Runnable).start();
自从JDK5之后,sun公司在java.util.concurrent包下提供了一些方法来管理线程:
具体看代码里面有注释,一目了然:
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class DemoLiftOff implements Runnable {protected int countDown=10;private static int taskCount=0;private final int id=taskCount++;public DemoLiftOff(){}public DemoLiftOff(int countDown){this.countDown=countDown;}public String status(){return "#"+id+"("+(countDown>0?countDown:"Liftoff!")+")";}@Overridepublic void run() {while(countDown-->0){System.out.println(status());Thread.yield();try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}} public static void main(String[] args) { //普通的通过Thread启动线程// for(int i=0;i<5;i++){// new Thread(new DemoLiftOff()).start();// System.out.println("waitting for thread over~!!");// } //用线程管理池 ExecutorDervice Executors newCachedThreadPool //创建的线程个数与所需的相同,回收旧线程的时候停止创建新线程(首选)// ExecutorService exec=Executors.newCachedThreadPool();// for(int i=0;i<5;i++){// exec.execute(new DemoLiftOff());// }// exec.shutdown(); //newFixedThreadPool //创建的线程个数可控,优先选择代价高昂的线程,执行完毕在执行别的// ExecutorService exec=Executors.newFixedThreadPool(3);// for(int i=0;i<5;i++){// exec.execute(new DemoLiftOff());// }// exec.shutdown(); //SingleThreadExecutor //创建无论多少个线程会根据创建的次序排序执行完一个执行下一个 ExecutorService exec=Executors.newSingleThreadExecutor(); for(int i=0;i<5;i++){ exec.execute(new DemoLiftOff()); } exec.shutdown();}}
- 管理线程的线程池
- 线程的管理.executorService线程池
- IOCP的线程池管理
- IOCP的线程池管理
- 【高级线程管理】线程池
- COM的线程管理
- Android中采用线程池进行线程的管理
- 线程管理(二)创建线程池管理线程
- 线程池管理
- 线程池管理
- 线程池管理
- Android 线程池管理 .
- Android 线程池管理
- Android 线程池管理
- java线程池管理
- Android 线程池管理
- Android 线程池管理
- Android 线程池管理
- Linux系统下UDP发送和接收广播消息小例子
- Java FutureTask理解
- Flex 收藏网址
- Android ContentProvider(创建及调用)
- linux系统--nameserver惹得祸
- 管理线程的线程池
- linux 下实现服务器与客户端连接小例子
- mysql某列递增的存储过程
- linux命令--vi状态批量替换内容
- 负载均衡器技术Nginx和F5的优缺点对比
- AudioSource.cpp中read()的过程
- Ubuntu12.04创建 eclipse launcher
- <超级整理术>--读后笔记
- 数据库对象关系查询