首页 > 文档
内存检查:多种类型的内存泄漏分析方案
- 2024-05-30
- 1480 ℃
内存泄漏
内存泄漏(Memory Leak)是指程序中已动态分配的堆内存,由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
这是来自百度百科的一段解释,下面我们先来看下 Node.js 中的内存回收策略。
Node.js GC 的策略
首先我们要理解在 Node.js 存储中分为堆和栈:
栈中主要存储的是一些原始类型,比如 Boolean、Null、Undefined、Number、BigInt、String 以及 Symbol;
堆中主要存储引用类型的数据,比如对象、全局变量等。
由于栈是系统存储的临时数据,因此系统会进行释放,不会引发内存泄漏问题;而堆中的数据是需要程序自己进行清理,因此存在内存泄漏风险,在 JavaScript 中进行垃圾回收的有引用计数和标记清除法。
而在 Node.js V8 引擎中使用了多种方法的融合:
对于存活较短的存储对象会使用Scavenge 算法;
而对于存活较长的对象或者说在 Scavenge 算法中存储的对象数据超过一定比例时,则会使用标记清除法与标记整理法相结合的方式。
具体这三种算法的细节,你需要自行去了解下,本讲核心还是内存泄漏的类型以及分析方法,下面我们先来了解下内存泄漏的分类。
下一篇:大幅成倍提升Redi处理性能
相关内容
教师资格证考试-幼儿园
局部解剖学
实用人体解剖图谱 概论...
Spark大数据处理:技术、...
2024考研政治全程复习资料
2021年合肥工业大学考研...
征服C指针
带你手写 JS 数组多个...
-
深入理解、应用及扩展 Twemproxy
2024-05-24 1330
-
普通话水平学习教程
2024-08-20 1343
-
2018口腔执业助理医师考试大纲【全】
2024-08-19 1053
-
2012地理专业教师招聘试题
2024-08-20 1169
-
院感科工作汇报
2025-05-20 1205
-
教师资格证考试与教学能力
2024-08-19 1084
-
员工招聘制度表 - 企业管理表格
2024-07-27 1201
-
专升本重要知识点资料
2024-08-08 1090
-
【新文道】大学英语四级实力抢分班
2024-08-18 998
-
Redi如何处理文件事件和时间事件?
2024-05-24 1244
文章评论 (0)
- 这篇文章还没有收到评论,赶紧来抢沙发吧~


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