卸载样式表时Mozilla中的内存泄漏

时间:2010-05-03 08:41:22

标签: dom browser memory-leaks stylesheet mozilla

我正在尝试解决一些内存泄漏的受限设备(摩托罗拉机顶盒)上使用Mozilla v1.7.12。

当我动态加载引用某些大图像的样式表时,我可以看到消耗的内存量随着图像的大小而增加。这就是我所期望的。

然后,当我从DOM中删除样式表时,我希望释放内存。但是,这不会发生。

这是一个问题,因为我正在处理的Web应用程序需要能够在页面的生命周期内多次动态加载和卸载样式表。

因此,我的问题是:我看到的是预期的行为还是已知的错误?有办法解决这个问题吗?

我应该指出,我已经在样式表中的所有图像上将expires标头设置为-1。

[更新]

如果我继续加载和卸载样式表,浏览器会消耗越来越多的内存。因此,似乎并非浏览器重用相同内存的情况。

1 个答案:

答案 0 :(得分:0)

是否是一个错误是一个非常主观的问题。浏览器在需要时使用内存,并且当它不再认为它需要它时最好放弃。它可能永远不会释放内存,因为保留它以便重用比放弃放弃和请求它更有效。

简而言之,第二次猜测任何程序消耗和释放内存的原因或时间往往是一种无望的努力(除非它是你的代码)。

您是否尝试过一个接一个地加载多个样式表?您可能会发现即使浏览器没有返回内存,它也会重用相同的池,因此总内存使用量实际上并没有增长。