MegaMU个人站

欢迎光临

落日黄沙 白帆秋水 你可知谁的记忆在时空里飞?


Gil锁

目录

正常情况下的CPU运作

我们先使用htop查看CPU占用情况

htop界面

我们跑一个单线程死循环,发现它可以把一个CPU的性能给占满。

我们跑一个多进程死循环,发现它可以把多个CPU的性能给占满。

我们跑一个多线程死循环,发现它并不能把多个CPU 的性能占满,而是保持在一个大致相等的占用率上。

GIL全局解释器锁

同一时间,只有一个线程使用CPU,一个进程只有一个GIL锁。

所以多线程实际上是伪并行。

早期计算机都是单核的,GIL是“历史遗留问题”

GIL解决方案

慎用!

  • 换一个解释器,如jython
  • 使用多进程而不是多线程
  • 使用其他语言写子进程部分

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦