线程池
文章平均质量分 71
靈臺清明
我會一直努力,一直加油的。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
学习日报|线程池 OOM
线程池任务堆积导致OOM的解决方案摘要 核心问题:任务到达速率远超处理能力时,队列堆积引发内存溢出。常见场景包括突发流量、消费阻塞、内存泄漏和隐式线程池。 解决方案: 线程池有界化:设置合理队列容量(maxPool×2~5) 组合策略: 拒绝策略快速失败+告警 入口限流+MQ削峰 超时熔断机制 非关键路径降级 参数建议:core≈CPU核数×(1+阻塞系数),max=core×2~4 监控体系:线程池活跃数/队列/拒绝数+RT+JVM指标 关键原则:通过有界化、限流、熔断等多重手段,将不确定性控制在系统可承原创 2025-09-18 21:53:33 · 360 阅读 · 0 评论 -
学习日报|线程池专题学习总结
线程池是复用线程的容器,通过预先创建线程降低创建/销毁成本。核心参数包括线程数、队列、拒绝策略等。执行流程遵循"核心→队列→扩容→拒绝"四步,状态包含RUNNING至TERMINATED。关键优化点:使用有界队列、合理配置线程数、设置任务超时、监控活跃线程/拒绝数。常见OOM场景包括无界队列堆积、任务泄漏等。最佳实践为:有界队列+显式拒绝+分池隔离+监控告警。注意避免无界队列和无超时调用,通过限流、降级等机制保障系统稳定。原创 2025-09-14 22:54:56 · 927 阅读 · 0 评论 -
01-手写线程池与模拟OOM
本文介绍了线程池的核心参数及实现原理。线程池主要包含corePoolSize(核心线程数)、maximumPoolSize(最大线程数)、keepAliveTime(空闲线程存活时间)、workQueue(任务队列)和handler(拒绝策略)等关键参数。通过一个手写线程池示例,详细演示了这些参数的工作机制:当任务数≤corePoolSize时创建核心线程;核心线程满后任务进入队列;队列满后创建非核心线程;所有资源满后触发拒绝策略。代码还展示了非核心线程的超时销毁机制。该实现完整模拟了线程池的创建、任务调度原创 2025-09-14 20:36:09 · 229 阅读 · 0 评论 -
线程池核心参数 — 5W1H1S 解析
线程池核心参数5W1H1S解析摘要(150字) 线程池核心参数包括corePoolSize(核心线程数)、maximumPoolSize(最大线程数)、keepAliveTime(空闲线程存活时间)、workQueue(任务队列)、threadFactory(线程工厂)和handler(拒绝策略)。其作用在于限制资源、提升性能、应对高峰和容错兜底。参数在任务提交、队列满载或线程空闲时动态生效,适用于高并发服务端场景。配置需结合业务类型:CPU密集型任务推荐核心线程数为CPU数+1,IO密集型为2倍CPU数;原创 2025-09-13 16:39:56 · 529 阅读 · 0 评论
分享