概念:
executors是java.util.concurrent.Executors包下的工具类,用于创建线程池的工具。它可以创建四种不同功能的线程池。
1、newFixedThreadPool
ExecutorService fixedThreadPool=Executors.newFixedThreadPool(8);
fixedThreadPool.execute(new Thread());
用于创建固定大小的线程池。如果线程池中执行的任务数大于初始时线程池指定的大小。那么该任务会被放到队列中等待,当有空闲线程时,再执行任务。
2、newSingleThreadExecutor
线程池中只有一个线程。
3、newCacheThreadPool
线程池没有个数限制,新来一个任务就新建一个线程,当线程空闲时,在60秒内没有新任务时,系统会自动销毁该线程。
4、newScheduleThreadPool
和fixedThreadPool一样,在初始化时指定固定大小的线程池个数。不同之处是,在执行每个任务时,可以设置间隔时间,循环调用,类似timer。