V8 垃圾回收

  1. 云栖社区>
  2. Node.js 性能平台>
  3. 博客>
  4. 正文

V8 垃圾回收

_朴灵_ 2018-05-14 17:16:28 浏览1168
展开阅读全文

转自: https://github.com/yjhjstz/deep-into-node

垃圾回收器是一把十足的双刃剑。好处是简化程序的内存管理,内存管理无需程序员来操作,由此也减少了长时间运转的程序的内存泄漏。然而无法预期的停顿,影响了交互体验。本文从 V8 (node.js runtime) 的角度分析垃圾回收策略。

基本概念

垃圾回收器解决基本问题就是,识别需要回收的内存。一旦辨别完毕,这些内存区域即可在未来的分配中重用,或者是返还给操作系统。一个对象当它不是处于活跃状态的时候它就死了。一个对象处于活跃状态,当且仅当它被一个根对象或另一个活跃对象指向。根对象被定义为处于活跃状态,是浏览器或V8所引用的对象。比如说全局对象属于根对象,因为它们始终可被访问;浏览器对象,如DOM元素,也属于根对象,尽管在某些场合下它们只是弱引用。

堆的

网友评论

登录后评论
0/500
评论
_朴灵_
+ 关注
所属团队号: Node.js 性能平台