线程池 -实现线程复用

线程池:实现线程的复用,无须反复创建线程而消耗过多的资源,提高响应速度

>可用集合来实现 容器->集合(ArrayList,HashSet,LinkedList<Thread>,HashMap)

#原理:
>当程序第一次启动时,创建多个线程,使用时采用Thread T=list.remove(),即可调用线程
>同理也可用Thread T=linded.removeFirst();
>使用完后记得还回线程池,采用list.add()或linked.addLast(t);
>在JDK1.5后,不用自己创建线程池了,已经内置了

#线程池创建java.util.concurrent 类 Executor(执行者)  -线程池工厂类
##有个静态方法
>static ExecutorService newFixedThreadPool(int nThreads, ThreadFactory threadFactory)
>      创建一个可重用固定线程数的线程池,以共享的*队列方式来运行这些线程,在需要时使用提供的 ThreadFactory 创建新线程。
>返回的是ExecutorService接口的实现类对象,可用其接受(面向接口编程)

#ExecutorService接口
>取线程,调用start方法,执行线程任务
>>*submit(Runnable task)*提交一个*Runnable*任务进行执行
>关闭/销毁线程
>>*void shutdown()*

#使用步骤
>1.

#
上一篇:Executor ExecutorService Executors


下一篇:多线程简单应用ExecutorService