为什么python没有任何真正的轻量级线程?

pio*_*otr 9 python multithreading pthreads

我是Python的新手,似乎多处理和线程模块不是很有趣,并且遇到了相同的问题,例如Perl中的线程.有没有技术上的原因为什么解释器不能使用轻量级线程(如posix线程)来实现真正在多个内核上运行的高效线程实现?

Ale*_*vik 23

正在使用POSIX线程.问题是GIL.

请注意,GIL不是Python规范的一部分 - 它是CPython参考实现的一部分.例如,Jython不会遇到这个问题.

那就说,看着Stackless

  • nosklo:可能更准确地说GIL使单线程CPython更快.删除它的修改设法使并行算法的多线程代码比等效的单线程实现运行得更快,但单线程代码的速度大大降低 (6认同)