线程池的基本思想

这是线程池系列的第一篇文章,首先会介绍一下,什么是线程池,线程池的优点,以及线程的解决的问题;
下一篇会介绍线程池的核心设计和实现

线程池是什么?

线程池(Thread Pool)是一种基于池化思想管理线程的工具;
线程过多会带来额外的开销,其中包括创建 销毁线程的开销调度线程的开销等,同时降低计算机的整体性能。线程池维护多个线程,等待监督管理者分配可并发执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另外一方面避免线程数量过度膨胀导致过分调度的问题,保证对内核的应用;

点击了解池化思想

线程池优点

  1. 降低资源消耗,通过池化技术重复利用已经创建的线程,降低线程创建和销毁造成的损耗;
  2. 提高相应速度,任务到达时,无需等待线程创建即可立即执行
  3. 提高线程的可管理性,线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会因为线程的不合理分布导致资源调度失衡,降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控;
  4. 提供更多更强大的功能,线程池具有可扩展性,允许开发人员向其中增加更多的功能;例如:延时定时线程池(ScheduledThreadPoolExecutor)

线程池解决的问题是什么?

线程池解决的核心问题就是资源管理问题;在并发环境下,系统不确定在任意时刻,有多少任务需要执行,有多少资源需要投入,这种不确定性带来一下若干问题?

  1. 频繁申请/销毁资源和调度资源,将带来额外的消耗,可能会非常巨大
  2. 对资源的无限申请缺少抑制手段,易引发系统资源耗尽的风险
  3. 系统无法合理管理内部的资源分布,降低系统的稳定性

欢迎小伙伴 评论区交流

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值