java语言基础(96)——线程池的使用

来源:互联网 发布:下载切换mp3软件 编辑:程序博客网 时间:2024/06/01 07:29

线程池可以让我们重复利用线程,避免了重复创造线程,销毁线程,又创造线程带来的资源浪费。

线程池的相关功能被封装在Executors类中,我们可以对其深入研究来掌握更多的线程池的用法。

示例代码:

package ThreadDemo;public class MyRunnable implements Runnable {public void run() { for(int x=0;x<100;x++){ System.out.println(Thread.currentThread().getName()+":"+x); }}}

package ThreadDemo;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class ThreadPoolDemo { public static void main(String[] args) { // 创建线程池ExecutorService es = Executors.newFixedThreadPool(2);// 执行Runnable 或 Callable 代表的线程es.submit(new MyRunnable());es.submit(new MyRunnable());// 回收线程池 如果不回收   则可以重复利用去执行其它事情了                es.shutdown();}}

当我们没有调用shutdown方法时,我们会发现程序执行完毕后是等在那里没有结束的,这就说明了线程池中的线程没有被销毁,还可以重复利用,当我们主动调用shutdown方法后,会把程序结束,同时也会回收线程池。


原创粉丝点击