PyPy GIL是RPython中PyPy解释器实现的一部分,还是translate.py自动添加的东西?也就是说,如果我用RPython编写自己的新语言解释器,并通过translate.py运行它,它会受到GIL的先验限制,还是取决于我的解释器代码?
发布于 2012-08-31 15:33:00
GIL处理由PyPy签出中的模块/线程/gil.py插入。这是一个可选的翻译功能,只有在启用线程模块时才会添加。也就是说,RPython本身不是一种线程安全语言(例如C),所以您需要注意正确地锁定对象,这样它们就不会出现不一致的情况。主要的问题是提供一个线程感知的垃圾收集器,因为我们现在使用的垃圾收集器不是线程安全的,仅仅添加一个锁就会从自由线程模型中移除很多好处。
干杯,菲哈尔
https://stackoverflow.com/questions/12166268
复制相似问题