遥记得去年的五月份抱着高程书
啃的时候, 对于垃圾回收一脸懵逼, 后续由于不常用, 就淡化了, 今天无意看到这个知识点, 记录一下.
更新
[2019-5-8]
Added
- Initial release
一、前言
自动垃圾回收机制, 本质就是找到未来不会使用的变量或对象
二、记录
2.1 全局变量
全局变量的生命周期较长, 会导致其长时间不会被回收, 开发中尽量避免使用全局变量.
2.1 标记清除法
由
标记阶段
和清除阶段
组成.
- 定时扫描
- 从根开始, 递归遍历每一个引用的对象
- 标记每一个能从根对象访问到的对象
- 遍历堆内存, 释放未标记的对象
2.2 引用计数法
根据指向变量的引用个数, 判断是否需要回收
无法解决循环引用
的问题:
1 | const o1 = {}; |