Java实现通用线程池计算机等级考试

文章作者 100test 发表时间 2010:01:01 12:21:19
来源 100Test.Com百考试题网


  线程池通俗的描述就是预先创建若干空闲线程,等到需要用多线程去处理事务的时候去唤醒某些空闲线程执行处理任务,这样就省去了频繁创建线程的时间,因为频繁创建线程是要耗费大量的CPU资源的。如果一个应用程序需要频繁地处理大量并发事务,不断的创建销毁线程往往会大大地降低系统的效率,这时候线程池就派上用场了。

  本文旨在使用Java语言编写一个通用的线程池。当需要使用线程池处理事务时,只需按照指定规范封装好事务处理对象,然后用已有的线程池对象去自动选择空 闲线程自动调用事务处理对象即可。并实现线程池的动态修改(修改当前线程数,最大线程数等)。下面是实现代码:

  //ThreadTask .java

  package polarman.threadpool.

  /** *//**

  *线程任务

  */

  public interface ThreadTask ...{

  public void run().

  }

  //PooledThread.java

  package polarman.threadpool.

  import java.util.Collection. import java.util.Vector.

  /** *//**

  *接受线程池管理的线程

  */

  public class PooledThread extends Thread ...{

  protected Vector tasks = new Vector().

  protected boolean running = false.

  protected boolean stopped = false.

  protected boolean paused = false.

  protected boolean killed = false.

  private ThreadPool pool.

  public PooledThread(ThreadPool pool)...{ this.pool = pool.

  }

  public void putTask(ThreadTask task)...{ tasks.add(task).

  }

  public void putTasks(ThreadTask[] tasks)...{ for(int i=0. i


相关文章


java面向对象编程笔记:操作符简介(4)计算机等级考试
java面向对象编程笔记:Java语言初步(3)计算机等级考试
java面向对象编程笔记:UML建模语言初步(2)计算机等级考试
java面向对象编程笔记:面向对象开发方法(1)计算机等级考试
Java实现通用线程池计算机等级考试
核心技术在Applet中实现数字签名计算机等级考试
Java中Excel导出时文件名乱码问题的解决计算机等级考试
JAVA版MD5加密算法计算机等级考试
计算机二级辅导:java中120个经典问题(4)计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛