1

我正在开发一个基于 HTML5 的游戏,它在 iPad 2 上运行时存在内存泄漏问题。在内存跟踪中,我看到加载的图像占用了几乎已使用的内存并且它从未释放过。

所以,这就是我想知道的原因:浏览器如何将图像保存在内存中?

在我的想象中,当浏览器的 HTML 解析器到达 Image DOM 元素时,循环开始,它将图像数据从 URL 加载到内存中并将其呈现到屏幕上。

那么,图像数据是什么时候从内存中释放出来的呢?或者如何手动释放?

4

1 回答 1

0

一些代码可能很有趣,看看你如何在你的应用程序中管理你的图像。

无论如何,对于 ipad 3 上图像的内存泄漏问题(不确定 2,但我相信是的)这是一个很好的提示,它是使用这样的简单 CSS 规则:

img{
    -webkit-transform: translateZ(0); 
}

这个简单的规则将启用 3D 加速,但仅在您真正需要时才使用它。

希望它有一点帮助

于 2013-07-07T18:10:41.993 回答