Swift:如何注销保留对象的数量?

sir*_*333 16 iphone reference retain ios swift

有没有办法快速将对象的保留计数注销到Xcode的控制台?如果没有,那么下一个最佳选择是什么?

Tri*_*tmm 34

使用CFGetRetainCount功能

示例:

print(CFGetRetainCount(object))
Run Code Online (Sandbox Code Playgroud)

在这里阅读更多内容:https://developer.apple.com/reference/corefoundation/1521288-cfgetretaincount

希望有帮助

  • 另请注意,在 Swift 中,`CFRetainCount` 还计算“未知”类型的引用,其中可能包括弱引用。我通过使用 Xcode“View Memory Graph Hierarchy”工具交叉引用运行时 `CFGetRetainCount` 值来了解这一点。更多信息:https://koenig-media.raywenderlich.com/uploads/2017/08/visual_memory_debugger.png (3认同)

Ink*_*lem 3

通常,您会使用工具来获取保留计数。但正如这里回答的,方法是retainCount

如何获取 NSObject 的引用计数?

  • `retainCount` 在 Swift 中并不好用。否则 - 请查看“特殊注意事项”下的文档:“此方法在调试内存管理问题时没有任何价值。因为任何数量的框架对象都可能保留一个对象以保存对其的引用......”你是在仪器中做的吗? (2认同)