🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# [`gc`](https://docs.singtown.com/micropython/zh/latest/openmvcam/library/gc.html#module-gc "gc: 控制垃圾回收器")– 控制垃圾回收器[](https://docs.singtown.com/micropython/zh/latest/openmvcam/library/gc.html#module-gc "永久链接至标题") 该模块实现相应CPython模块的子集,如下所示。更多信息,请参见:[CPython文档][`gc`](https://docs.python.org/3/library/gc.html#module-gc "(在 Python v3.7)"). * 函数 ``` gc.enable() ``` 启用垃圾自动收集。 ***** 禁用垃圾自动收集。堆内存仍可分配,仍可使用`gc.collect()`手动启动垃圾回收。 ``` gc.disable() ``` 运行垃圾回收。 ``` gc.collect() ``` 返回分配的堆RAM的字节数量。 ``` gc.mem_alloc() ``` 1. ## 与CPython区别 ``` gc.mem_free() ``` 此函数为MicroPython扩展。 ``` gc.mem_free() ``` 返回可用的堆RAM的字节数量。 ## 与CPython区别 ``` gc.threshold([amount]) ``` 此函数为MicroPython扩展。 ``` gc.threshold([amount]) ``` > 设置或查询额外的GC分配阈值。通常,仅在无法满足新分配时,才会触发一个集合,即内存不足(OOM)时。若调用该函数,除OOM之外, 每次分配字节数之后都会触发一个集合(总之,自前一段时间后,已分配了相当数量的字节)。数量通常被指定为少于满堆大小, 其目的是在堆耗尽前触发一个集合,且希望前期集合能够防止过度内存碎片。这是一种启发式的度量方法,其效果随应用程序不同而不同, 其数量参数的最优值也不尽相同。 无参数调用该函数将返回阈值的当前值。-1值表示禁用配置阈值。 | 该函数为MicroPython的扩展。CPython有一个类似函数`set_threshold()`,但由于不同的GC实现,其签名与语义也不同。 | | --- | --- | #### 与CPython区别