在分析我的iOS应用程序时,我多次执行一个简单的任务,从堆栈中推送和弹出视图,然后拍摄快照。每次执行相同的代码,推送的视图只包含一些图像,一旦视图弹出就会被删除。
现在因为几乎一半的快照的持久计数为0,假设没有废弃的内存会安全吗?
我听说持久性计数大于零的行可能是因为某些内部缓存。
我使用的是Xcode 4.2.1,应用程序正在使用ARC。
修改
感谢Kendall Helmstetter Gelner,我设法进一步调试了这个问题。我可能不应该使用模拟器进行调试。我现在在设备上运行它,现在看起来有一个对象没有被释放:
在查看扩展详细信息视图后,我认为我刚刚找到了问题的原因。
答案 0 :(得分:2)
很难从屏幕截图中找出可能缓存的内容--UIImage会缓存内容,也可能是其他一些系统元素。看起来您可能正在模拟器中运行它,您是否在设备上尝试了快照?
您也可以选择“隐藏系统库”,以便更好地了解您自己的代码涉及多少。