易截截图软件、单文件、免安装、纯绿色、仅160KB

Java实现通用线程池

      线程池通俗的描述就是预先创建若干空闲线程,等到需要用多线程去处理事务的时候去唤醒某些空闲线程执行处理任务,这样就省去了频繁创建线程的时间,因为频 繁创建线程是要耗费大量的CPU资源的。如果一个应用程序需要频繁地处理大量并发事务,不断的创建销毁线程往往会大大地降低系统的效率,这时候线程池就派 上用场了。
      本文旨在使用Java语言编写一个通用的线程池。当需要使用线程池处理事务时,只需按照指定规范封装好事务处理对象,然后用已有的线程池对象去自动选择空 闲线程自动调用事务处理对象即可。并实现线程池的动态修改(修改当前线程数,最大线程数等)。下面是实现代码:
package polarman.threadpool;

/**
* 线程任务
*/
public interface ThreadTask {
    public void run();
}
package polarman.threadpool;
import java.util.Collection;
import java.util.Vector;
/** *//**
* 接受线程池管理的线程
* @author ryang
* 2006-8-8
*/
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<tasks.length; i++)
            this.tasks.add(tasks[i]);
    }
  
    public void putTasks(Collection tasks)...{
  


相关文档:

日期类加减及Java中日期类操作算法大全

1.计算某一月份的最大天数
1Calendar time=Calendar.getInstance();
2time.clear();
3time.set(Calendar.YEAR,year); //year 为 int
4time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0
5int day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数
注:在使用set方法之前,必须 ......

Java 有关IO类的注释/说明


InputSteam,OutputStream:对字节的操作
Reader,Writer:对字符的操作
InputStreamReader,OutputStreamReader:字节->字符的转换,字符->字节的转换
FilterInputSteam,FilterOutputStream:过滤字节输入流(输出流)的超类
FilterReader,FilterWriter:过滤字符输入流(输出流)的超类
BufferedInputStream,BufferedOutp ......

Java7新特性四大体验

    距离Java7的MR版本发布有段时间了,通过安装试用之后的总体感觉是:速度又快了。仔细阅读了Java7的相关文档发现,Java7拥有如下的一些新的特性。
首先是模块化特性,如果您安装和使用过NetBeans6.7的话,是不是会有一个很大的感觉,就是NetBeans6.7的启动速度比以前快了很多,当然并不是NetBeans已经使 ......

Java中static用法


转自
http://blog.pfan.cn/sword2008/13772.html
一、static
  请先看下面这段程序:
  public class Hello{
    public static void main(String[] args){
//(1)
      System.out.println("Hello,world!");   //(2)
    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号