我写了一个扩展,它主要是 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/