为什么UIWebView没有释放所有内存?

时间:2010-12-29 06:49:25

标签: iphone cocoa memory ios uiwebview

我有一个图形密集型iPad应用程序,具有UIWebView。使用模拟器(iOS 4.2.1),我可以看到Real Mem在浏览时增加了很多。我浏览的越多,它使用的RAM就越多。当我关闭UIWebView并释放它时,它使用的内存的某些被释放,但不是全部。这很烦人。好的,也许是因为它没有立即解除分配。精细。但是,当有内存警告时,我希望系统能够进行一些清理工作。但是,如果我浏览,然后关闭UIWebView(并释放它),然后在模拟器中触发内存警告,Real Mem 不会更改! WTF?

那为什么呢?为什么UIWebView不能更好地将内存释放回系统?为什么它似乎没有响应内存警告?我错过了什么吗?

1 个答案:

答案 0 :(得分:6)

添加作为答案,因为它似乎有所帮助:

  

活动监视器没用   调试目的。使用分配   仪器。注意模拟器   可以表现得有很大不同   而不是设备上的应用程序。

很高兴有所帮助。我经常发现打开“仅跟踪实时分配”对于观看我的应用程序的正在进行的工作集是非常有帮助的。实时/无效跟踪也很有用。

哦,heapshot analysis (article on my weblog)可以非常有效地追踪内存泄漏。

泄漏?永远不要使用它。快照分析完全取代了我。您的里程可能会有所不同。