【问题标题】:why did my app use a high real memory?为什么我的应用程序使用了很高的实际内存?
【发布时间】:2011-03-27 02:52:42
【问题描述】:

我的应用是一个可以在线观看视频的客户端。 我用 Instruments 测试我的应用程序,我从 Instruments 库中选择了 Leaks、ObjectAlloc、Memory Monitor。我发现 All Allocations Live Bytes 只有 9.33 MB,但在 Memory Monitor 中是 81 MB,告诉我这个过程使用了大量内存。而且当我播放电影时,用法仍然出现,但没有发现任何泄漏。在设备的控制台中,它继续警告低内存从级别 1 到级别 2,然后崩溃。我为此感到非常难过。有人能告诉我原因吗? 顺便说一句,在我的应用程序中,它包含大约 40MB 的图片资源。如果资源大小太大会导致这个问题吗?

【问题讨论】:

    标签: iphone memory ipad


    【解决方案1】:

    注意几点:

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

    请检查以上所有事项,您可能会执行以上任何一项,但看起来解决您的问题的是第二个原因。

    希望这会有所帮助。

    【讨论】:

    • 非常感谢,我认为问题出在您刚才告诉我的问题上,我的应用程序中有大约 1800 张照片。我的上帝
    • 我将所有 [uiimage imageWithName:] 替换为 NSString *path = [[NSBundle mainBundle] pathForResource:@"icon" ofType:@"png"]; myImage = [UIImage imageWithContentsOfFile:path];但它没有什么特别的。
    猜你喜欢
    • 2020-03-28
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    • 2011-04-03
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多