首页 > 文档
内存检查:多种类型的内存泄漏分析方案
- 2024-05-30
- 1588 ℃
内存泄漏
内存泄漏(Memory Leak)是指程序中已动态分配的堆内存,由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
这是来自百度百科的一段解释,下面我们先来看下 Node.js 中的内存回收策略。
Node.js GC 的策略
首先我们要理解在 Node.js 存储中分为堆和栈:
栈中主要存储的是一些原始类型,比如 Boolean、Null、Undefined、Number、BigInt、String 以及 Symbol;
堆中主要存储引用类型的数据,比如对象、全局变量等。
由于栈是系统存储的临时数据,因此系统会进行释放,不会引发内存泄漏问题;而堆中的数据是需要程序自己进行清理,因此存在内存泄漏风险,在 JavaScript 中进行垃圾回收的有引用计数和标记清除法。
而在 Node.js V8 引擎中使用了多种方法的融合:
对于存活较短的存储对象会使用Scavenge 算法;
而对于存活较长的对象或者说在 Scavenge 算法中存储的对象数据超过一定比例时,则会使用标记清除法与标记整理法相结合的方式。
具体这三种算法的细节,你需要自行去了解下,本讲核心还是内存泄漏的类型以及分析方法,下面我们先来了解下内存泄漏的分类。
下一篇:大幅成倍提升Redi处理性能
相关内容
函数那些事:JS 闭包难点剖析
爆发 大数据时代预见未...
Android从入门到精通
Dubbo 过去、现在以及未来
3 大主流系统框架:由浅...
2012体育专业教师招聘试题
AI:人工智能的本质与未来
阿里巴巴Java开发手册 v1.2.0
-
JavaScript权威指南
2024-05-24 1257
-
BBC,CNN,VOA英语八级新闻听力300篇PDF及音频
2024-08-19 2253
-
教师资格证中学考试资料
2024-08-19 1655
-
鸟哥的Linux私房菜 基础学习篇
2024-05-24 1501
-
锋利的jQuery
2024-05-28 1302
-
2012政治,思想品德专业教师招聘试题
2024-08-20 1542
-
安全保卫管理表格 - 企业管理表格
2024-07-31 1362
-
漫谈设计模式:从面向对象开始
2024-05-24 1108
-
学习R编程语言
2024-05-24 1367
-
Hadoop基本知识和应用环境
2024-05-24 1455
文章评论 (0)
- 这篇文章还没有收到评论,赶紧来抢沙发吧~


下载完整资料
点击分享文章