Java多线程之Executor框架
引言 Executor框架是指JDK 1.5中引入的一系列并发库中与Executor相关的功能类,包括Executor、Executors、ExecutorService、Future、Callable等。 一、为什么要引入Executor框架? 1、如果使用new Thread(...).start()的方法处理多线程,有如下缺点: ① 开销大。对于JVM来说,每次新建线程和销毁线程都会有很大的开销。 ② 线程缺乏管理。没有一个池来限制线程的数量,如果并发量很高,会创建很多线程,而且线程之间可能会有相互竞争,这将会过多占用系统资源,增加系统资源的消耗量。而且线程数量超过系统负荷,容易导致系统不稳定。 2、使用线程池的方法,有如下优点: ① 线程复用。通过复用创建了的线程,减少了线程的创建、消亡的开销。 ② 有效控制并发线程数。 ③ 提供了更简单灵活的线程管理。可以提供定时执行、单线程、可变线程数等多种使用功能。 二、Executor框架的UML图 三、下面开始分析一下Executor框架中几个比较重要的接口和类。 1、Callable Callable位于java.util.conc...