Python之父:GIL不是问题,是幸事,内附pytho你学习教程分享!

闲扯两句。刷推的时候,龟叔分享了一篇新闻

Python之父:GIL不是问题,是幸事,内附pytho你学习教程分享!

Python 之父 Guido(中国Python程序员尊称他为龟叔)替程序员发声:"996工作制是不人道的"。有人却歪楼的问了龟叔一个关于 GIL 的问题?

Python之父:GIL不是问题,是幸事,内附pytho你学习教程分享!

这位老哥问他是否还有机会解决GIL的问题?龟叔还对这个问题进行了回复,我估计经常有人只要逮到龟叔就会问到这个问题。

他的回答是:「It's a blessing, not a problem」。翻译过来大概意思就是:别想了,GIL 不是问题,是幸事。

GIL保证了线程安全,同时还是一种低成本的实现方式,线程安全是什么意思呢?

所谓线程安全就是在多线程环境下,多个线程执行同一段代码,要保证程序正确运行,因为多线程环境下可能存在资源的竞争,如何才能保证同一时刻只有一个线程对共享资源的写操作? GIL 翻译过来是全局解释器锁,同一时刻下,只可能有一个线程运行,这样就能保证资源不会同时被多个线程操作,这算是一种低成本的实现方式吧。因为一旦引入真正的多线程,问题要复杂很多。

所以你们就别在幻想着Python能解决GIL了,去除 GIL 的 Python 就不是Python了,因为这个问题早就有人提出而且实践过,移除 GIL 后执行速度反而更了慢,这事也就作罢,即使是PyPy 也是有GIL的,想移除GIL 太他妈难了。为了提高速度,Guido 另辟蹊径引入基于协程的异步。

最后,想学习Python的小伙伴们!

请关注+私信回复:“学习”就可以拿到一份我为大家准备的Python学习资料!

Python之父:GIL不是问题,是幸事,内附pytho你学习教程分享!

相关推荐