PyPy GIL 是 RPython 中 PyPy 解释器实现的一部分,还是 translate.py 自动添加的东西?也就是说,如果我用 RPython 编写自己的新语言解释器并通过 translate.py 运行它,它是否会先验地受到 GIL 的约束,还是取决于我的解释器代码?
GIL 处理由 module/thread/gil.py 插入 PyPy 结账中。这是一个可选的翻译功能,仅在启用线程模块时添加。也就是说,RPython 本身不是线程安全语言(例如 C),因此您需要注意正确锁定对象,这样它们就不会出现不一致。主要问题是提供一个线程感知的垃圾收集器,因为我们现在使用的垃圾收集器不是线程安全的,仅仅添加一个锁就会消除自由线程模型的很多好处。
干杯,
菲哈尔
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)