现在协程流行的原因,还是线程的成本太高。
一个是现在的cpu每个核心有独立缓存,一个线程固定分配到一个核心是最好的,如果线程反复随机调度到不同核心,就会导致缓存的效率大幅下降,
另一个是操作系统层面,线程是一个比较重的对象,操作系统支持的线程数量上限也不高。
所以要用线程取代协程做并发,还是需要cpu结构和操作系统上的改进,能够高效支持大规模线程调度。
否则,就需要开发人员自己进行任务分割和调度,协程就存在流行的土壤。
【 在 mopo 的大作中提到: 】
: 好不好不知道,反正我编程10多年还真没怎么碰见过直接用协程的业务代码,就算是library也是凤毛麟角,也没出现过做架构和解决方案时非用不可的场景
: 对于并行和并发,实际情况是能把多线程玩好的已经不多了,单线程内做到伪并行也有很多路子,这个我一般交给专业的lib来做不会尝试自己造轮子
--
FROM 223.72.89.*