python协程为什么不需要枷锁

 我来答
机器猫啊哈哈哈
2019-03-16
知道答主
回答量:75
采纳率:0%
帮助的人:7.7万
展开全部
Python是一门动态的脚本语言,它有一个锁叫做全局解释器锁,它这个锁是加在cpython解释器上的,我们说的Python多线程,再线程切换的时候加了锁,用了控制同步。所以多线程不是真正意义的并发,而协程是在线程里面的,线程并没有锁,一个线程可以有多个协程,协程又叫微线程,它的切换完全由自己创建,它有几种实现方式,一种是yield和send,一种是gevent,一种是greenlet,线程的并发不好,协程可以有上万次并发。回到之前的问题,因为协程在线程内,而线程本身没有锁,所以携程没有锁。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式