首页 > 编程语言 > 详细

线程池

时间:2019-10-13 22:52:30      阅读:86      评论:0      收藏:0      [点我收藏+]

手动创建一个线程池:

import java.util.concurrent.ThreadPoolExecutor;

Java通过Executors提供了四种线程池,这四种线程池都是直接或间接配置ThreadPoolExecutor的参数实现的;

import java.util.concurrent.Executors;

newFixedThreadPool(int nThreads)

创建一个固定长度的线程池,每当提交一个任务就创建一个线程,直到达到线程池的最大数量,这时线程规模将不再变化,当线程发生未预期的错误而结束时,线程池会补充一个新的线程

newCachedThreadPool()
创建一个可缓存的线程池,如果线程池的规模超过了处理需求,将自动回收空闲线程,而当需求增加时,则可以自动添加新线程,线程池的规模不存在任何限制

newScheduledThreadPool(int corePoolSize)    #
创建了一个固定长度的线程池,而且以延迟或定时的方式来执行任务,类似于Timer。

newSingleThreadExecutor()
这是一个单线程的Executor,它创建单个工作线程来执行任务,如果这个线程异常结束,会创建一个新的来替代它;它的特点是能确保依照任务在队列中的顺序来串行执行

 

 

线程池

原文:https://www.cnblogs.com/tangshengwei/p/11668448.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!