![通过线程池创建多线程 [Java],第1张 通过线程池创建多线程 [Java],第1张](/aiimages/%E9%80%9A%E8%BF%87%E7%BA%BF%E7%A8%8B%E6%B1%A0%E5%88%9B%E5%BB%BA%E5%A4%9A%E7%BA%BF%E7%A8%8B+%5BJava%5D.png)
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();
创建一个线程池,它可以安排在给定的时间后延迟执行命令或者定期的执行命令
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)