kni*_*ian 5 javascript memory-management google-chrome
我正在调试一个使用过多内存的 Javascript 应用程序。在 Heap Profiler 中,它显示大约有 300MB,但根据 Chrome 的任务管理器,它总共使用了大约 950MB,其中有 40MB 的“Javascript 内存”。
基于这个问题,任务管理器和堆分析器之间的 650MB 差异似乎是由于本机内存造成的:
然而,我无法弄清楚什么是“本机内存”,并且谷歌搜索也没有帮助。哪些类型的内容会进入本机内存,以及我将如何调试使用如此多本机内存的内容?
可能的重复项(全部未答复):
我不会为此付出努力,但我假设本机内存是 chrome 为 javascript 任务保留的整个内存片。这就是它显示在任务管理器中的原因。另一方面,堆内存包含由 javascript 任务分配的所有对象。当这样的对象不再有引用时,垃圾收集器可能会将其从堆中删除。如果您的 JavaScript 任务收集越来越多的堆,您的代码中可能会出现泄漏。堆分析器可以支持您查找此类内存泄漏,但一般来说,在编写任何代码时请注意清理对所有对象的引用。
| 归档时间: |
|
| 查看次数: |
801 次 |
| 最近记录: |