JAVA多线程六(线程池)

java多线程—线程池

一.概述

线程池是管理Runnable线程的一个集合。当我们需要启动线程执行多个任务时,可将任务传递给线程池,不必每次执行任务是都创建一个新线程,只要池中有空闲线程,任务就会随机分配给其中一个线程执行。在线程池内部,任务被插入到阻塞队列中,池中的线程从该阻塞队列中出列。当一个新任务插入队列时,其中一个空闲线程就会启动执行。

二.线程池使用:

java.util.concurrent包中附带内置线程池,下面就是一个简单的线程池的实现。

 public class ExectorServiceTest {
    public static void main(String[] args) {
        ExecutorService executorService = Executors.newFixedThreadPool(10);
        ThreadTest test1 = new ThreadTest();
        test1.i = 10;       
        executorService.execute(test1); 
        ThreadTest test2 = new ThreadTest();        
        test2.i = 20;
        executorService.execute(test2);
        executorService.shutdown();
    }   
}

class ThreadTest implements Runnable{
    public int i;

    @Override
    public void run() {     
        System.out.println(i);
    }
}

猜你喜欢

转载自blog.csdn.net/xiaolicd/article/details/81513804