2010-08-09 58 views
0

我的应用程序是一个客户端可以在线观看视频。 我使用仪器测试我的应用程序,我从乐器库中选择了Leaks,ObjectAlloc,Memory Monitor。我发现All Allocations Live Bytes只有9.33 MB,但它在内存监视器中为81 MB,告诉我这个过程使用大量内存。当我播放电影时,使用情况仍然存在,但没有发现泄漏。在设备的控制台,它继续警告低级内存形式从1级到2级,然后坠毁。我对此感到非常伤心。任何人都可以告诉我理由? 顺便说一下,在我的应用程序中,它包含大约40MB的图片资源。如果资源大小太大导致该问题?为什么我的应用程序使用高实内存?

回答

2

几点需要注意:

  • 在你的项目中启用NSZombie?
  • 您使用的是[UIImage imageWithName:@"imageName"]?这些可能会导致严重问题,因为该方法将图像缓存到内存中。尽可能避免使用它。
  • 你的deallocs是否完整?

请检查以上所有内容,您可能会做上述任何事情,但看起来问题的关键是第二个原因。

希望这会有所帮助。

+0

非常感谢,我认为这个问题是你刚才告诉我,我在app.my神 – ben 2010-08-09 06:44:50

+0

具有约1800图片我全部替换[UIImage的imageWithName:] 到 的NSString *路径= [[一个NSBundle mainBundle] pathForResource:@“icon”ofType:@“png”]; myImage = [UIImage imageWithContentsOfFile:path]; 但它没有什么特别的。 – ben 2010-08-09 09:03:48

相关问题