1,创建大小可变的线程池对象
Executors.newCachedThreadPool(int number);
2,创建固定大小的线程执行器
Executors.newFixedThreadPool(int number);
极端:Executors.newSingleThreadExecutor()方法
getPoolSize()获取执行器线程池中实际的线程数
getActiveCount()方法获得正在执行的任务的线程数
getCompletedTaskCount()方法获得执行器已经完成的任务数
shutdown()方法:当执行器执行完所有待运行的任务后,它将结束。
shutdownNow()方法:这个方法会立即关闭执行器。执行器将不再执行那些正在等待执行的任。这个方法将返回等待执行的任务的列表。调用时,正在运行的任务将继续运行时这个方法并不等待这些任务的完成。