Python对多线程的支持

Python's support for multi-threading

我听说 python 仍然存在这个全局解释器锁定问题。因此,python 中的线程执行实际上并不是多线程的。

克服这个问题的可能解决方案是什么?

我正在使用 python 2.7.3

为了理解 python 的 GIL,我建议使用这个 link:http://www.dabeaz.com/python/UnderstandingGIL.pdf

来自 python 维基:

GIL 是有争议的,因为它会阻止多线程 CPython 程序在某些情况下充分利用多处理器系统。请注意,潜在的阻塞或长 运行 操作,例如 I/O、图像处理和 NumPy 数字运算,发生在 GIL 之外。因此,只有在 GIL 中花费大量时间解释 CPython 字节码的多线程程序中,GIL 才会成为瓶颈。

有关于取消GIL的讨论,但我想还没有实现。如果你真的想为你的自定义代码实现多线程,你也可以切换到Java.

看看是否有帮助。