translation.gc¶
- 名称: gc
- 描述: 垃圾收集策略
- 命令行: –gc
- 选项类型: 选择选项
- 可能的值
- boehm
- ref
- semispace
- statistics
- generation
- hybrid
- minimark
- incminimark
- none
- 默认值: ref
- 要求
- 值 ‘boehm’ 需要
- translation.continuation 设置为 ‘False’
- translation.gctransformer 设置为 ‘boehm’
- 值 ‘ref’ 需要
- translation.rweakref 设置为 ‘False’
- translation.gctransformer 设置为 ‘ref’
- 值 ‘semispace’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘statistics’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘generation’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘hybrid’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘minimark’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘incminimark’ 需要
- translation.gctransformer 设置为 ‘framework’
- 值 ‘none’ 需要
- translation.rweakref 设置为 ‘False’
- translation.gctransformer 设置为 ‘none’
- 值 ‘boehm’ 需要
选择翻译后的程序使用的垃圾收集器。推荐的默认值为“incminimark”。
- “ref”: 引用计数。翻译时间非常长,结果也很慢。仅用于测试。不要将其用于真正的 RPython 程序。
- “none”: 没有 GC。泄漏所有内容。不要将其用于真正的 RPython 程序:泄漏率非常高。
- “semispace”: 一个复制半空间 GC。
- “generation”: 一个使用半空间 GC 的分代 GC,用于较旧的一代。
- “hybrid”: 将“generation”收集器与标记-清除老空间相结合的混合收集器。
- “boehm”: 使用 Boehm 保守式垃圾收集器。
- “minimark”: 一个具有良好性能的分代标记-清除收集器。包含针对大型数组的页面标记。
- “incminimark”: 与 minimark 相似,但增加了增量主收集。似乎与“minimark”相比没有性能损失,因此它是默认选项。PyPy 的一些最新功能(如 cpyext)仅与该垃圾收集器配合使用。