课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
线程池是程序员在学习软件编程开发技术都需要熟练掌握的一个编程知识,而今天我们就一起来了解一下,线程池的常见分类与特点都有哪些。
1.newCachedThreadPool:创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时讲重用它们,并在需要时使用提供的ThreadFactory创建新线程
特征:
(1)线程池中的数量没有固定,可以达到大值(Integer.MAX_VALUE=2147483647)
(2)线程池中的线程可进行缓存重复利用和回收(回收默认时间为1分钟)
(3)当线程池中,没有可用线程,会重新创建一个线程
2.newFixedThreadPool:创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程,在任意点,在大多数nThreads线程会处于处理任务的活动状态。如果在所有线程处于活动状态时提交附件任务,则在有可用线程之前,附件任务将在队列中等待,如果在关闭前的执行期间由于失败而导致任何线程终止,那么一个新线程将代替它执行后续的任务(如果需要)。在某个线程被显式关闭之前,池中的线程将一直存在
特征:
(1)线程池中的线程处于一定的量,可以很好的控制线程的并发量
(2)线程可以重复被使用,在显示关闭之前,都将一直存在
(3)超过一定量的线程被提交时需在队列中等待
3.newSingleThreadExecutor:创建一个使用单个worker线程的Executor,以无界队列方式来运行该线程。(注意,如果因为在关闭前的执行期间出现失败而终止了此单个线程,那么如果需要,一个新线程将代替它执行后续的任务)。可保证顺序地执行各个任务,并且在任意给定的时间不会有多个线程是活动的,与其他等效的``newFixedThreadPool(1)``不同,可保证无需重新配置此方法所返回的执行程序即可使用其他的线程
特征:
(1)线程池中多执行一个线程,之后提交的线程将会排在队列中以此执行
4.newSingleThreadScheduledExecutor:创建一个单线程执行程序,它可安排在给定延迟后运行命令或者定期执行
特征:
(1)线程池中多执行一个线程,之后提交的线程活动将会排在队列中依次执行
(2)可定时或者延迟执行线程活动
希望这辈子,最让你无悔的事情就是来达内学习!学习向来不是件易事,但无论过程多么艰难,希望你依然热爱生活,热爱学习!永远记得,达内将与你一同前行!现在扫码,立即领取万元课程礼包,助力0基础快速入行,为你梳理行业必备技能,全方位了解岗位发展前景!
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。