Python 新提案:使全局解释器锁成为可选项
去年的2022 Python 语言峰会上,开发者 Sam Gross带来了新提案:删除全局解释器锁 GIL,解放多线程性能。但由于 GIL 历史悠久,许多官方/非官方的 Python 包和模块都深度融合了 GIL 模块,彻底移除 GIL 功能可能会对生态造成影响。在 2023 年1 月 9 日,Sam Gross 又创建了另一个 Python提案 PEP 703:使全局解释器锁成为构建 Python 的可选项。 CPython 的全局解释器锁(“GIL”)防止多个线程同时执行 Python 代码,GIL 是 Python有效使用多核 CPU 的障碍。 向 CPython 添加一个构建配置 (--without-gil) ,使其可在没有全局解释器锁的情况下运行 Python 代码,并进行必要的更改,以使解释器线程安全。 这条 PEP 提案的内容可谓是论文级别。提案中先阐述了 GIL 对 Python 并发的性能阻碍,随后详细分析了抽离GIL需要对 Python 内部进行哪些改动: 移除全局解释器锁需要对 CPython 内部进行大量更改,但对公共 Python 和 C API 的更改相对...