ExecutorService
Executors
// 创建一个线程池,使用固定数量的线程操作共享无界队列。
public static ExecutorService newFixedThreadPool(int nThreads) {
return new ThreadPoolExecutor(nThreads, nThreads,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>());
}
// 创建一个线程池,它可以在需要的时候创建新的线程,但有线程可用的时候,可以重用以前构建的线程。
// 这个线程池 将会显著提高 许多执行异步任务的 短命线程的 性能
public static ExecutorService newCachedThreadPool() {
return new ThreadPoolExecutor(0, Integer.MAX_VALUE,
60L, TimeUnit.SECONDS,
new SynchronousQueue<Runnable>());
}
ThreadPoolExecutor