Runnable 接口
通常,线程池都是通过线程池工厂创建,再调用线程池中的方法获取线程,再通过线程去执行任务方法
1、Executors:线程池创建工厂类
public static ExecutorService newFixedThreadPool(int nThreads):返回线程池对象
2、ExecutorService:线程池类
Future<?> submit(Runnable task):获取线程池中的某一个线程对象并执行
3、Future 接口
用来记录线程任务执行完毕后产生的结果
4、使用线程池中线程对象的步骤
创建线程池对象
创建 Runnable 接口子类对象
提交 Runnable 接口子类对象
关闭线程池