【问题标题】:Dirty Memory Solution Xcode & Instruments脏内存解决方案 Xcode & Instruments
【发布时间】:2014-01-09 14:33:07
【问题描述】:

当我在 Instruments 中改进我的应用程序时,我看到内存的不规则产生或没有被删除的更好的内存。

正如您在屏幕截图中看到的那样,内存逐步增加。当我将控制器推送到视图时,它会增加,这是动画图片。

示例: 我从菜单开始并转到 AnimationView --> 内存使用量正在增加。 我回去,但内存水平保持不变。 当我再次推送到 AnimationView 时 --> 内存级别正在增加。

我怎样才能摆脱它。我的意思是通常当我退出 AnimationView 时必须删除内存

来自德国的问候 克里斯

【问题讨论】:

    标签: ios xcode memory instruments


    【解决方案1】:

    不断增长且永不回落的内存使用通常表明您正在创建事物,并且在完成后从不丢弃它们。

    我猜您正在使用情节提要,并且每次想要显示新屏幕时都只是调用一个新的转场,但从不弹出视图控制器/关闭模式/展开转场。

    当您调用 segue 时,iOS 会创建目标视图控制器的新实例。因此,您最终可能会在内存中获得越来越多的视图控制器,而您的本意是关闭视图控制器并返回到前一个视图控制器。

    【讨论】:

    • 所以我可以使用 unwind segues 来减少这种内存产生?
    • 是的。您需要注意何时要在现有视图控制器之上显示新视图控制器,以及何时要丢弃新视图控制器并弹回视图控制器堆栈的前一层。你如何组织和展示你的视图控制器?导航控制器?或者您只是在展示一系列模态转场?
    • 不,我使用的是 navigationController ;)
    • 当我退出 AnimationView 或离开菜单指向 AnimationView 时,是否必须使用 unwind segue 非常感谢!
    • 如果你使用导航控制器,那么你应该直接跳到前一个视图控制器。
    猜你喜欢
    • 2011-09-20
    • 2011-08-14
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 2011-11-06
    • 2016-11-01
    • 2014-10-15
    相关资源
    最近更新 更多