我们有一个使用 MonoTouch 和 UIWebView 构建的混合 Web/Native 应用程序。应用程序将加密的图像存储在磁盘上,然后由 UIWebView 请求,动态解密(通过 NSUrlProtocol),然后显示在应用程序中。
一切正常,直到我们有大约 27-30 张图像,此时我们收到内存警告,然后应用程序崩溃。
使用 Instruments 分析应用程序,我们看到我们的实际内存约为 55MB,但我们的虚拟内存约为 800 MB,这似乎相当高。此外,我们的物理记忆似乎在接近尾声时飙升。
我意识到这可能是我们的应用程序的一个问题,但是我们不知道如何诊断这个问题。如果有人有任何想法,将不胜感激。
我们尝试了几件事:
- Monotouch Profiler(仅显示 ~ 2mb 使用量)
- GC.Collect() (没有变化)
谢谢,詹姆斯