java自定义线程池
来源:互联网 发布:淘宝网窗帘罗马圈 编辑:程序博客网 时间:2024/04/28 02:36
线程池的优点:
1、减少创建和销毁线程的次数,每个线程可以重复使用,可以执行多个任务
2、可以降低系统资源的占用率
线程池其实就是将许多线程通过队列组合起来,每当有任务时,就会从队列中取出线程,让其工作。
ThreadPool类
public class ThreadPool {private int temp; private ThreadWork []tw;//保存任务的对象private LinkedList<Runnable> list=new LinkedList<Runnable>();/** * 构造函数,初始化线程池中的线程 * @param temp 线程池中的线程数 */public ThreadPool(int temp){this.temp=temp;tw=new ThreadWork[temp];//创建工作线程对象for(int i=0;i<temp;i++){ThreadWork work=new ThreadWork();tw[i]=work;tw[i].setName(i+"号线程");//调用start方法,会启动ThreadWork的run方法tw[i].start();}}//执行任务的方法public void execute(Runnable task){synchronized(list){//将任务添加到任务队列里list.add(task);list.notify();}}/** * 工作线程类 */private class ThreadWork extends Thread{public void run(){Runnable r;while(true){synchronized (list) {//如果任务队列为空,就等待if(list.isEmpty()){try {list.wait();} catch (InterruptedException e) {e.printStackTrace();}}r=list.removeFirst();//移除队列中第一个线程}r.run();}}}
有任务时,就去调用execute()方法,系统就会分配一个线程去处理;这个就是自定义线程池。
- java自定义线程池
- java 自定义线程池
- 自定义java 线程池
- 自定义Java线程池
- 自定义Java线程池 ThreadPoolExecutor
- 自定义Java线程池 ThreadPoolExecutor
- java自定义线程池--ThreadPoolExecutors
- java自定义线程池--ThreadPoolExecutors
- Java自定义线程池-ThreadPoolExecutor
- java ThreadPoolExecutor 自定义线程池优势
- Java 自定义 线程池与任务队列
- java ThreadPoolExecutor 自定义线程池demo
- Java自定义拒绝策略与线程池
- 自定义JAVA线程池拒绝策略
- Java 自定义 线程池与任务队列
- java自定义线程阻塞
- java 自带线程池与自定义线程池
- Java线程池ThreadPoolExecutor及自定义线程池
- 在Windows Server 2008 R2上安装Exchange 2013过程中遇到的一些问题
- 2013.9.29 数据库SQL:mysql 时间函数在项目中的使用
- 百度2014校园招聘长沙站笔试题
- oracle创建表空间用户
- 如何创建按钮CButton
- java自定义线程池
- 构造函数不能为虚函数
- ostream类方法 重载的插入操作符 和 cout格式化
- 九个PHP很有用的功能
- 【系列】Latex-3
- 快速排序算法(牢记)
- C语言程序的编译和链接过程
- 黑马程序员-注解(Annotation)
- 探秘Google新搜索引擎算法