本文共 1163 字,大约阅读时间需要 3 分钟。
往往采用多线程目的都是为了提高程序效率,提高系统使用性。但是频繁的创建和销毁线程本身就是一个有损效率的事。所以java的JUC就提供了线程池的使用。
线程池 :提前创建好多个线程放入线程池中,使用时直接获取,使用完成放回线程池。可以避免频繁创建和销毁线程,实现重复利用。 好处:JDK5.0起提供了相关线程池API : Executors 和 ExecutorService
ExecutorService真正的线程池接口,继承了Executor
常见的实现类 ThreadPoolExecurtor。实现步骤
实现:
// 线程类 static class ThreadTest implements Runnable{ public void run() { System.out.println(Thread.currentThread().getName()+":执行了"); } } // 执行类 public static void main(String[] args) { // 创建线程服务,构造线程池为3 ExecutorService executorService = Executors.newFixedThreadPool(3); // 启动线程 executorService.execute(new ThreadTest()); executorService.execute(new ThreadTest()); executorService.execute(new ThreadTest()); executorService.execute(new ThreadTest()); }
结果:定义了线程池为3,则4个线程使用线程池中的3个线程。
转载地址:http://tjhof.baihongyu.com/