javascript - 查找扩展 Javascript 泄漏

标签 javascript firefox memory-leaks firefox-addon

我写了一个扩展,它主要是 JS 和 C++ XPCOM 对象。 它相当复杂且冗长,我相信我有很多内存泄漏(使用显示泄漏的工具)

我迷路了..:(

我只是找不到一个简单、直接的工具来告诉我我的泄漏是从哪里产生的。

我做了以下事情: 读 - https://wiki.mozilla.org/Performance:Leak_Tools 阅读有关内存泄漏的各种其他文章。 使用 - 泄漏监控插件和泄漏 guague(均显示泄漏)。

如何追踪导致我的 js 代码泄漏的原因?有什么工具可以轻松做到这一点吗? 是否有一篇文章解释了如何非常简单地做到这一点? 我需要运行 FireFox 调试构建吗?我需要重新构建 Firefox 吗?

请指导我,因为我完全迷路了:(

谢谢! D.

最佳答案

Firefox Memory Leak addon应该会告诉您内存泄漏的位置,不需要调试构建。

我没有在 Firefox 插件中使用 C++,但您可以使用 valgrind 或其他内存泄漏检测器检查您的代码。 Javascript 也会导致内存问题,例如,对 Firefox 窗口使用 registerListener 而不添加 window.addEventListener("unload", function() {unregisterListener}) 会导致内存泄漏。

关于javascript - 查找扩展 Javascript 泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5909173/

相关文章:

cocoa - NSAppleScript 泄漏大量内存

C valgrind 仍然可达内存泄漏但没有使用堆?

javascript - Google Maps API 反向查找地址详细信息准确性

javascript - Mocha 在导入的代码中找不到模块

javascript - 使用 jQuery 更改 CSS 属性

javascript - 如何使用脚本以两种颜色显示文本?

javascript - 使用javascript选定文本的背景颜色

css - 缩写 - CSS :first-letter over two lines

javascript - 当我在按下 ESC 键时在 keyDown 事件处理程序中使用它时,location.reload 不会重新加载页面。仅在 FF

ios - 如何检测未正确发布的内容