【问题标题】:Finding which object has a reference to another object in iOS and ARC在 iOS 和 ARC 中查找哪个对象引用了另一个对象
【发布时间】:2012-03-28 09:10:54
【问题描述】:

我在 xcode 和 iOS 中工作,我有一个没有被删除的对象,因为其他一些对象仍然有对它的引用,但我不知道是谁。使用 Instruments,我看到它的引用计数为 1,但据我查看代码可知,它应该为零。

我已经运行了 Instruments,但它没有将其视为泄漏。

如果在 Instruments(或在调试器中)有办法找出谁还有引用?

【问题讨论】:

  • 您有没有找到可以帮助您调试的仪器?我现在也遇到了同样的问题

标签: ios xcode automatic-ref-counting instruments


【解决方案1】:

也许你应该尝试将一些强引用替换为弱引用,看看它是否仍然成立?

【讨论】:

    【解决方案2】:

    我想在这种情况下我们无法为您提供太多帮助。可能您必须在对象的预期生命周期中跟踪对象。

    您可以尝试的是 NSObject 的一个类别,您可以在其中记录每个保留和释放。您还可以在这些方法中放置断点,以便您在堆栈跟踪中看到(因此保留/释放它的位置)。

    【讨论】:

    • 我不认为在 ARC 下调用了保留和释放方法,而不是传统的方法。
    • objc_releaseobjc_retain 在 ARC 下被调用。
    猜你喜欢
    • 2013-07-13
    • 2011-02-08
    • 1970-01-01
    • 2012-11-25
    • 2013-02-18
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多