JS语言的内存回收机制


一开始使用计数回收机制,但是发现循环引用的时候内存容易泄露:

function problem(){
var objectA = new Object();
var objectB = new Object();
objectA.someOtherObject = objectB;
objectB.anotherObject = objectA;
}

正确的姿势:
objectA.someOtherObject = null;
objectB.anotherObject = null;
//因为程序员未释放结构内指针导致的内存泄漏...
图片.png
然后又跳回了标记清除式的内存管理:

定期扫描内存,发现有未被对象指针访问到的空间即可清除。但是可见它产生了太多内存碎片,而且为了清除内存会导致程序间歇性中止......


530043e10cf2a3dc99dd9439.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容