欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 明星 > 线程池基础知识

线程池基础知识

2025/10/3 0:03:43 来源:https://blog.csdn.net/weixin_43267093/article/details/144794344  浏览:    关键词:线程池基础知识

线程池:

顾名思义就是管理一系列线程的资源池。当有任务要处理时,直接从线程池中获取线程来处理,处理完之后线程并不会立即被销毁,而是等待下一个任务。

使用线程池的好处

  • 降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁造成的消耗
  • 提高响应速度:当任务到达时,任务可以不需要等到线程创建就可以立即执行
  • 提高线程的可管理性:线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。

线程池常见的参数

ThreadPoolExecutor3个最重要的参数:

  • corePoolSize:任务队列未达到队列容量时,最大可以同时运行的线程数量
  • maximumPoolSize:任务队列中存放的任务达到队列容量时,当前线程可以同时运行的数量变为最大线程数
  • workQueue:新任务来的时候会先判断当前运行的线程数量是否达到核心线程数,如果达到的话,新任务就会被存放在队列中。

线程池处理任务的流程

  1. 如果当前运行的线程数小于核心线程数,那么就会新建一个线程来执行任务
  2. 如果当前运行的线程数等于或大于核心线程数,但是小于最大线程数,那么就把该任务放到任务队列里等待执行
  3. 如果向任务队列投放任务失败(任务队列已经满了),但是当前运行的线程数是小于最大线程数的,就新建一个线程来执行任务
  4. 如果当前运行的线程数已经等于最大线程数了,新建线程将会使当前运行的线程超出最大线程数,那么当前任务会被拒绝

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词