为什么Java虚拟机中没有GIL?为什么Python需要这么糟糕?
我希望有人能够提供一些有关Java虚拟机的根本差异的见解,从而使Java虚拟机可以很好地实现线程而无需使用全局解释器锁(GIL),而Python则需要这样做。
回答:
Python(该语言)不需要GIL(这就是为什么它可以在JVM [Jython]和.NET
[IronPython]上完美实现的原因,并且这些实现可以自由地使用多线程)。CPython(流行的实现)一直使用GIL来简化编码(尤其是垃圾收集机制的编码)和非线程安全的C编码库的集成(过去有很多这种方法);
-)。
该空载燕子项目,其它的宏伟目标中,做计划一个GIL -免费的虚拟机为Python
-引用该网站,“此外,我们打算移除GIL和修复在Python多线程的状态,我们认为,这是可以通过实施更复杂的GC系统来实现,例如IBM的Recycler(Bacon等,2001)。”
以上是 为什么Java虚拟机中没有GIL?为什么Python需要这么糟糕? 的全部内容, 来源链接: utcz.com/qa/403487.html