JDK5.0提供了线程池相关的API:
- java.util.concurrent.ExecutorServicejava.util.concurrent.Executors
ExecutorService是真正的线程池接口
ExecutorService接口中的常用方法:
void execute(Runnable command);
执行任务,没有返回值 — 一般用于执行Runnable实现类
Future submit(Callable task);
执行任务,有返回值,一般用来执行Callable实现类这个方法是一个泛型方法
因为这个方法中有泛型结构: — 泛型结构就是< T >
泛型结构一般位于修饰符之后,返回值之前 注意: 这里的< T >才是泛型结构,有了这个泛型结构才表示这个方法是一个泛型方法,这里的Future< T >并不是泛型结构
void shutdown();
关闭线程池
线程池的工具类 — 用来创建并返回不同类型的线程池
Executors类中的常用方法:
Executors.newCachedThreadPool();
带缓冲的线程池 – 创建一个可根据需要创建新线程的线程池
Executors.newFixedThreadPool();
创建一个可重用固定线程数的线程池
Executors.newSingleThreadExecutor();
创建一个只有一个线程的线程池
Executors.newScheduledThreadPool();
创建一个线程池,它可以安排在给定的时间后延迟执行命令或者定期的执行命令


![通过线程池创建多线程 [Java] 通过线程池创建多线程 [Java]](http://www.mshxw.com/aiimages/31/709598.png)
