【问题标题】:Understanding Allocations Instrument Retain Counts了解分配仪器保留计数
【发布时间】:2016-05-10 21:20:15
【问题描述】:

我有一个未发布的视图控制器,尽管据我所知,我将所有代表设置为零,删除所有手势等,但即使使用 Instruments,我也很难理解保留视图控制器的原因.我启用了“记录保留计数”选项。

我的 UIViewController 的名称是 TDTPaintingViewController,正在由 TDTOilistOptionsViewController 加载和卸载。

我不清楚什么拥有保留计数,我很困惑为什么它会多次显示内容,即使我单步执行我的代码它只调用一次(例如 TDTOilistOptionsViewController.loadPaintingView())。

附加的是仪器跟踪。如果有人可以帮助解释它,我将不胜感激。它不仅可以帮助解决这个问题,还可以帮助我了解将来如何使用该工具。

Allocations Instruments.trace

【问题讨论】:

    标签: ios memory-management xcode-instruments


    【解决方案1】:

    使用 Instrument Leak 模板是跟踪保留周期和未释放对象的更好方法。

    根据您的跟踪文件,blockaddChildViewController 是一个很好的起点,尤其是这个:

    【讨论】:

    • 谢谢 - 我看了一下 Leak 并不能真正分辨出区别。什么调用 addChildViewController?我正在使用 UINavigationController 的 pushViewController 方法来呈现绘画视图控制器。当我双击您推荐的行时,它会将我带到汇编代码。
    • 我找到了 - 我以为我正在删除视图控制器视图并将其设置为 nil 但我没有!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-09
    • 1970-01-01
    • 2011-08-23
    相关资源
    最近更新 更多