# [`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区别
- 简介
- 关于MixPY
- 准备
- MixPY_函数库
- MicroPython标准库
- gc _控制垃圾回收器
- math_数学函数
- sys_系统相关函数
- ubinascii _ 二进制/ ASCII转换
- ucollections_集合和容器类型
- uerrno _系统错误代码
- uheapq_ 堆队列算法
- ujson_JSON编码与解码
- uos _基本的“操作系统”服务
- ure_正则表达式
- MixPY_特定函数
- lcd_显示驱动
- lcd_范例
- sensor_感光元件
- sensor_范例
- image_机器视觉
- image_函数
- HaarCascade 类_特征描述符
- Similarity 类_相似度对象
- Histogram 类_直方图对象
- Percentile 类_百分比值对象
- Threhsold 类_阈值对象
- Statistics 类_统计数据对象
- Blob 类_色块对象
- Line 类_直线对象
- Circle 类_圆形对象
- Rect 类_矩形对象
- QRCode 类_ 二维码对象
- AprilTag 类_AprilTag对象
- DataMatrix 类_数据矩阵对象
- BarCode 类_条形码对象
- Displacement 类_位移对象
- Kptmatch 类_特征点对象
- ImageWriter 类_ImageWriter对象
- ImageReader 类_ImageReader对象
- Image 类_图像对象
- touchscreen_触摸屏幕
- touchscreen_范例
- video_视频
- video_范例
- audio_音频
- audio_范例
- nes_游戏模拟器
- nes_范例
- machine_板级功能
- I2C_总线协议
- I2C_范例
- PWM_脉宽调制
- PWM_范例
- SPI_同步串行协议
- SPI_范例
- Timer_硬件定时器
- Timer_范例
- UART_异步串口
- UART_范例
- network_网卡驱动
- network_范例
- Maix_功能库
- FPIOA_可编程 IO 阵列
- FPIOA_范例
- GPIO_通用输入/输出
- GPIO_范例
- I2S_驱动I2S设备
- I2S_范例
- freq_频率模块
- freq_范例
- FFT_傅里叶运算
- FFT_范例
- KPU_神经网络处理器
- KPU_范例