jAn*_*ndy 10 javascript memory firefox memory-leaks
在Firefox中(我猜自Firefox 4以来)我们有了这个about:memory页面.即使我非常熟悉C/C++动态内存管理,我也不得不承认我真的不知道如何阅读该页面.
about:memory作为JavaScript /前端开发人员,我希望能够在ECMAScript和/或DOM脚本中创建一种检测/查找内存泄漏的更好方法.我正在测试Windows 7和Mac OS X Snow Leopard系统.
所以我有几个问题,希望有人可以回答这些问题(如果你不确定,请不要猜测).
win32/privatebytes和之间的区别Memory in use.这真让我烦恼.如果我正在做一些重的ECMAScript/DOM操作,那么前一个值似乎会增加到Memory in use无止境,相反之处仍然是"小".哪个值真有意思?它看起来与win32 privatebytes您在任务管理器中看到的值相同.
Memory mapped和之间有什么区别Memory in use?我在谷歌上搜索了一段时间.有人说这表明使用的内存有多少是碎片化的.这有什么意思?这是内存泄漏的直接指标吗?
如果有人能够解释大部分价值(或链接我找不到的资源),我会很高兴.但是,对我来说最有趣的是那些win32私有字节和浏览器内存使用之间的巨大差距.Max OS X似乎没有这些值的等价物,我想这是因为一个基本的不同的内存管理系统.
您应该只关心浏览器实际使用的内存。由于内存碎片等原因,操作系统级别总是会分配更多的内存。但这确实是只有浏览器开发人员需要考虑的事情。如果您发现可重现的病态行为,请提交 Mozilla 错误(需要最小化测试用例)。但除此之外,您应该只确保您的代码不会囤积无法释放的对象(通过使用的内存可见)。
我不确定“内存映射”在新版本中是否可见about:memory,也许是在新名称下。我很确定你不应该关心它。这是分配有地址的内存量,只有操作系统级别才有意义。
| 归档时间: |
|
| 查看次数: |
4664 次 |
| 最近记录: |