问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

灯下黑?原来线程池是最典型生产消费者模式

发布网友 发布时间:2023-09-30 10:45

我来回答

1个回答

热心网友 时间:2024-12-02 09:53

使用Thread开启线程:

当然,一般我们会执行start方法。

若使用Thread开启线程:每一次子线程均需要经历创建和销毁的生命周期,性能不好。

为了解决这个问题,JDK设计出线程池。

JDK的BlockingQueue,天生实现的是生产者-消费者模型,即队列满了put队列会被阻塞;队列空了后get方法会被阻塞。

线程池中Worker线程开启后。使用while循环消费BlockingQueue中的Runnable。若while循环时得到的任务为空,那么便去关闭Worker线程。这也就是最大线程数超过空闲时间的核心线程数能自动回收的原因。

核心线程数的空闲时间 KeepAliveTime 。其实就是阻塞队列获取Running的最大等待时间。当配置了该参数且超过最大等待时间,那么返回一个null任务。而worker线程的run方法中的while循环得到null时,便会结束这个worker线程。

poll获取到的元素为空,那么便会结束监听,worker线程的run方法执行完毕。

当返回null时,由“work线程将开启while循环的监听”可值,将结束worker线程的监听操作。

生产者向BlockingQueue中放入消息时,并没有使用put方法,而是使用的offer方法。

拒绝策略:因为offer方法返回false,说明阻塞队列已经满了,若最大线程数大于核心线程数,那么继续开启Worker线程。若开启的是最大线程数的Worker线程,那么就会执行配置的拒绝策略。

上文我们得知,生产者放入queue时使用的是offer方法,当阻塞队列满了之后,直接返回false。我们可以采用put的方式,将主线程阻塞。不在向BlockingQueue中填充任务。

JAVA并发(12)— Lock实现生产者消费者
JAVA并发(13)— ThreadPoolExecutor的实现原理(源码分析)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
四川省综合素质a级证书? 华为手机怎么还原微信聊天记录 华为手机微信内容恢复方法 股权转让的主要方式有哪些 股权转让有哪几种方式 股东转让的几种形式是 股东转让的几种形式 高考多少分能上衡阳师范学院南岳学院 你们被玖富金融骗,后期有还款吗? 玖富悟空理财2022年最新消息还有希望吗?悟空理财最新情况(悟空理财可信... 同等责任交通事故致人死亡是否追究刑事责任 问道里面剑魂卡.和尚卡.蟹将卡.云兽卡那个更好? ...我想把我的手机铃音设成许嵩的宿敌怎么设置啊 labview旋钮怎么随时刷新 为什么不能用饱和食盐水除去氯化氢气体呢? 特检是做什么的 玄元剑仙绵竹山怎么过 微信帐号与有什么区别 右脚跟骨骨折,一年后把钢钉取出,三个月了,但脚侧(从尾指到脚跟)还疼痛... 星光灿烂猜三个数字 152×48先计算什么再计算什么 《暖雪》手游森罗万象之心打法攻略 二月份去土耳其伊兹密尔旅游穿什么衣服好? 想春节二月份去土耳其玩,会不会很冷 韩信街头霸王和诸葛亮黄金分割率哪个好 同一张身份证绑定的两个,有一个显示零钱支付超过10万被限制了... 和老婆矛盾不断,经常吵架,有小孩,想离婚,又可怜孩子,我该怎么办? 魔兽世界海岛探险任务攻略2022(wow海岛探险攻略) 我是微信扫码支付收款方,对方扫码之后没付款,能找到对方吗? 三年级48X52的竖式? 锁骨和胸上长了小红包,有些痒这是什么包啊 冰女中路最强出装 ...很想去当兵 但是近视眼 明年毕业能去参军吗 《暖雪》手游堕落的龙帝姬夏打法攻略 山东大学研究生实验材料报销需要多久 云顶之弈S6冰女怎么出装 这个符号在word中如何打出来,求指教? 大连兴工街 到火车站是多少公里呢 怎么知道好友被封了 pcpop的李想开的是什么车? 《暖雪》手游堕落的龙帝姬夏打法攻略 pcpop的李想开的是什么车? 怎么通过微信红包交易单号找到对方? 孩子叛给男方 但孩子一直女方带 男方不给抚养费怎么办 广东南粤银行校园招聘的时间是什么时候? 南京至成都可以通行吗最新? 洋气的小班班名 厦门医学院护理学录取分数线 全合成机油sp好还是sn好? 判拘役能否缓刑保释 吴茱萸,桂枝,当归,白芍,川芎,党参,炙甘草,丹皮,姜半夏,麦冬,阿胶