Java提供的用于管理线程池的类

可缓存线程池:newCacheThreadPool

基本特点:
可缓存线程池,先查看池中有没有以前建立的线程
如果有,就直接使用。如果没有,就建一个新的线程加入池中。
缓存型池子通常用于执行一些生存期很短的异步型任务
创建示例:

// 可缓存线程池
ExecutorService cachedThreadPool = Executors.newCachedThreadPool();

// 使用方式
cachedThreadPool.submit(new Thread() {
    public void run() {
        // TODO 
    }
});

固定线程数:newFixedThreadPool

基本特点:
创建一个可重用固定个数的线程池,以共享的*队列方式来运行这些线程。
定长线程池的大小最好根据系统资源进行设置。
Java中获取系统线程核数。如 Runtime.getRuntime().availableProcessors()
代码示例:

// 可重用固定个数的线程池
ExecutorService fixedThreadPool = Executors.newFixedThreadPool(3);

// 使用方式
fixedThreadPool.submit(new Thread() {
    public void run() {
        // TODO 
    }
});
上一篇:Java基础-抽象队列同步器:AbstractQueuedSynchronizer(2)-AQS的源码


下一篇:Hadoop单机部署