前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >细说线程池--中级篇

细说线程池--中级篇

作者头像
田维常
发布2019-12-25 18:37:45
3500
发布2019-12-25 18:37:45
举报
文章被收录于专栏:Java后端技术栈cwnait

线程池的实现原理分析

线程池的基本使用我们都清楚了,接下来我们来了解一下线程池的实现原理ThreadPoolExecutor是线程池的核心,提供了线程池的实现。ScheduledThreadPoolExecutor继承了 ThreadPoolExecutor,并另外提供一些调度方法以支持定时和周期任务。

Executers 是工具类,主要用来创建线程池对象我们把一个任务提交给线程池去处理的时候,线程池的处理过程是什么样的呢?首先直接来看看定义

线程池流程图

关注点在于execute方法,然后我们可以使用一个流程图来描述,整个线程池的整体状况:

线程池原理分析( newFixedThreadPool)

线程池就在生活中

小工厂生产汽车零件

工厂--线程池

正式员工---核心线程数

临时员工----最大线程数-核心线程数

工位或者场地---硬件资源

工厂生产汽车的零件,正常情况下,正式员工是能完成零件的生产,但是由于生意火爆,需要生产更多的零件,这是工厂就把接到的单存放起来,让正式员工加班加点的干,但是发现存放的单实在是太多了,这时候就得请临时工入场帮忙生产零件,解决那么存放的零件单。临时工人数也不能太多了,因为工厂场地有限(工位有限)。如果正式员工和临时工一起加班加点的生产,还是跟不上接到的零件单,对不起,我工厂真的无能为力,这时候工厂就得采取拒绝策略。

人力外包

当今社会上,很多人力外包的,比如说:人工客服。虽然现在也流行起人工智能客服,但是人力外包依然存在。

A公司请了10个客服,专门用来解决用户遇到的问题和投诉的。正常情况下,10个客服能应对所有客户的问题和投诉,但是一旦某个产品出问题较多,这时候10个客服就明显忙不过来了,但是还是能应付的,只是很多时候不能及时回复客户。祸不单行,这段时间用户使用的系统老是挂掉,产品不行+系统不稳定。导致客户收到反馈明显延迟的太久,这时候,A公司领导觉得请临时工来帮忙解决问题,因为A公司只能容纳下15个客服,但是15个完全是不能解决问题的,这时候就得采取拒绝了,反馈说我这边已经处理不了太多问题了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java后端技术栈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 线程池的实现原理分析
  • 线程池就在生活中
    • 小工厂生产汽车零件
      • 人力外包
      相关产品与服务
      对话机器人
      对话机器人(Conversation Robot,ICR),是基于人工智能技术,面向企业场景的 AI 服务,可应用于智能客服、服务咨询、业务办理等场景。本产品旨在帮助企业快速构建,满足自身业务诉求的对话机器人,从而减少企业人力成本或解决服务不及时问题。用户可通过对话机器人用户端引擎,实现高准确率的对话服务。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档