协程这么好,它能完全代替线程么?|环球实时
好多问题呀,开始回答或者提问前,其实可以看看问题本身是不是有问题,像黄执中一样。
------
这个问题首先前提就有问题,谁说协程那么好的?任何技术肯定都有自己的适用场景,这种通用层面的技术则更是了。
(资料图片仅供参考)
协程本质上就是由用户代码主动在某个时间点出让 CPU,可以在任何一行出让,当然语言层或框架层的协程一般会在原本是阻塞函数的调用内部,让出 CPU 资源,不阻塞当前线程。
当然像 go 这种协程做的特别牛逼的,牛逼到它自己都不想承认自己是协程的语言,就另说了。
所以协程一般适用于 IO 密集型的高并发场景。
你要说就完全 CPU 密集型计算,那还不如开你 CPU 核数那么多线程呢,开了协程反而不能并行了,还多了协程间切换的损耗。
所以协程那么好,这句话就可以否了,同时也顺便拿出了一个场景,说明用协程替换线程是负优化的,自然协程也不能完全替换线程。
------
再有,刚刚是站在应用程序角度考虑,要分场景看是使用协程还是线程。再从操作系统层面考虑,协程就根本无法替代线程了。
你想,协程需要自己主动出让 CPU 资源,那要是操作系统使用协程来运行应用程序,那万一应用程序自己一直不出让 CPU,也不调用能产生阻塞操作进而间接出让 CPU 的代码,那不就坏事了。
再有,协程本身的优势在于切换成本小,本质是因为栈小,而且也不需要切换页表。
那要是操作系统真的拿协程来跑多应用程序,这些优势也就不复存在了,而且如果协程实现在了内核态,本身从用户态陷入内核态的切换也少不了。
所以本来协程有的优势,在这里全没了,还极大增加了不公平性。
------
最后,这俩事情本身就不好讨论替换这一说,因为他们本质都不一样。
协程说白了就是一段串行的指令流,只不过中间哪个地方往哪跳的逻辑,被封装在了 "协程" 这个概念里而已。
再者,协程本身也是要跑在线程中的,需要有载体,他们二者本身就是相辅相成的关系,何来替代呢,更别说完全替代了。
有时候,了解清楚一项技术的本质,就能更好看清这些问题的荒诞了。
今天阳了躺在床上实在无聊,就挑了个知乎上的问题回答了一下,看好多回答都没说在点子上,就码了这些字,感兴趣的同学可以点开阅读原文看看。
关键词: 应用程序
精心推荐
- 协程这么好,它能完全代替线程么?|环球实时
- 即时看!微软再次警告企业更换Edge:项目继续依赖IE将存在严重风险
- 北京抗原检测试剂日产800万人份 保障就医用药需求 世界热讯
- 威海市商业银行发挥“链e贷”优势 “贷”动链上企业发展
- 华创证券:维持波司登(03998.HK)“强推”评级 目标价5.37港元
- 长三角一体化的“溢价”:让百姓和市场主体受益,这就是算大账长远账战略账-快消息
- 转阴后就能放飞自我?专家紧急提醒
- 签保密协议的能有多发工资吗
- 夜班的劳动合同如何写
- 《速度与激情9》预售持续火爆,“速激”家族上线观众直呼过瘾!
- 天天亮点!涨停雷达:个护用品个股异动 诺邦股份触及涨停
- 今日热讯:海顺新材获1家机构调研:公司有多年的复合材料技术积累,通过原有产线的培养,我们也有匹配铝塑膜产线要求的产业工人(附调研问答)
- A股异动 | 惠城环保(300779.SZ)跌逾11% 道博嘉美减持股份比例达1.15%-环球最新
- 谁都别想套路他们!这3大星座看似小白兔,实则精着呢! 世界最新
-
股票简称:华润三九 股票代码:000999 华润三九医药股份有限公司 (草案修订稿)
-
华泰证券发布研究报告称,维持舜宇光学(02382)“买入”评级,预测2022-24年EPS为2 47 3 79 4 39元人民币,目标价140港元。公司在10月
-
根据市场公开信息及12月13日披露的机构调研信息,浦银安盛基金近期对1家上市公司进行了调研,相关名单如下: 1)伟星新材(证券之星综合指标
-
智通财经APP讯,振华股份(603067)(603067 SH)公告,随着公司业务的发展,货物进出口规模逐年扩大,公司在物流、仓储方面的业务需求增大,公司拟通过
-
医脉通(02192 HK)早盘飙升逾36%,截至发稿,涨28%,报13 44港元,成交额3713 19万港元。
X 关闭
X 关闭
产业
-
不用跑北京 在家门口也能挂上顶...
日前,我省首个神经疾病会诊中心——首都医科大学宣武医院河北医院...
-
“十四五”期间 河北省将优化快...
从省邮政管理局获悉,十四五期间,我省将优化快递空间布局,着力构...
-
张家口市宣化区:光伏发电站赋能...
3月19日拍摄的张家口市宣化区春光乡曹庄子村光伏发电站。张家口市宣...
-
“张同学”商标被多方抢注 涉及...
“张同学”商标被多方抢注,官方曾点名批评恶意抢注“丁真” ...
-
山东济南“防诈奶奶团”花式反诈...
中新网济南12月15日电 (李明芮)“老有所为 无私奉献 志愿服...
-
广州新增1例境外输入关联无症状...
广州卫健委今日通报,2021年12月15日,在对入境转运专班工作人...
-
西安报告初筛阳性病例转为确诊病例
12月15日10:20,经陕西西安市级专家组会诊,西安市报告新冠病毒...
-
广东东莞新增本土确诊病例2例 ...
(抗击新冠肺炎)广东东莞新增本土确诊病例2例 全市全员核酸检测...
-
中缅边境临沧:民警深夜出击捣毁...
中新网临沧12月15日电 (胡波 邱珺珲)记者15日从云南临沧边境...
-
“土家鼓王”彭承金:致力传承土...
中新网恩施12月15日电 题:“土家鼓王”彭承金:致力传承土家...