JavaScript 内存泄漏教程:http://www.ruanyifeng.com/blog/2017/04/memory-leak.html
垃圾回收机制
最常使用的方法叫做引用计数(reference counting):语言引擎有一张"引用表",保存了内存里面所有的资源(通常是各种值)的引用次数。如果一个值的引用次数是0
,就表示这个值不再用到了,因此可以将这块内存释放。WeakSet 和 WeakMap对于值的引用都是不计入垃圾回收机制的,所以名字里面才会有一个"Weak",表示这是弱引用。
内存泄漏
不再用到的内存,没有及时释放,就叫做内存泄漏(memory leak)
经验法则是,如果连续五次垃圾回收之后,内存占用一次比一次大,就有内存泄漏。这就要求实时查看内存占用。
网友评论