我正在使用仪器检查我的应用程序是否泄漏,并且我正在尝试学习如何读取泄漏周期数据。我在我的一个泄漏点上得到了这张图:
如果图表是什么意思?“没有 ivar”是什么意思?
我正在使用仪器检查我的应用程序是否泄漏,并且我正在尝试学习如何读取泄漏周期数据。我在我的一个泄漏点上得到了这张图:
如果图表是什么意思?“没有 ivar”是什么意思?
“no ivar”消息类似于查看已剥离其符号的程序的调用堆栈。如果您正在查看调用堆栈,您会看到内存地址而不是函数名。在您的示例中,仪器显示地址 +16 和 +24。Instruments 找不到分配内存的变量名称,因此您会收到 [no ivar] 消息。
我没有办法让 Instruments 提供更好的信息。我从来没有让 Instruments 对泄漏周期做很多事情。
更新
如果您试图查找代码泄漏内存的位置,我建议您切换到调用树视图,您可以从跳转栏中执行此操作。选择 Invert Call Tree 和 Hide System Libraries 复选框可以更轻松地在调用树视图中定位您的代码。复选框位于跟踪文档窗口的左侧。