我在内存管理中遇到了一些问题,然后尝试使用intrument工具修复它。如何使用NSZombieEnabled oninterment Xcode 3.2.5
有关intrument使用NSZombieEnabled,我试着做这样的。问题是我从来没有找到一个复选框来在我的乐器中设置NSZombieEnabled激活。在这种情况下,我使用xcode 3.2.5,仍然在IOS 4.2上。
这是从显示NSZombieEnabled没有一个复选框仪器截图激活:
我做错了什么? 帮我请
谢谢
我在内存管理中遇到了一些问题,然后尝试使用intrument工具修复它。如何使用NSZombieEnabled oninterment Xcode 3.2.5
有关intrument使用NSZombieEnabled,我试着做这样的。问题是我从来没有找到一个复选框来在我的乐器中设置NSZombieEnabled激活。在这种情况下,我使用xcode 3.2.5,仍然在IOS 4.2上。
这是从显示NSZombieEnabled没有一个复选框仪器截图激活:
我做错了什么? 帮我请
谢谢
为什么不安装新的Xcode 4?在那里你可以很容易地在Scheme的Arguments for Debug选项卡下设置Scheme中的EnvironmentVariables。
要检查它实际上是设置我使用此代码...
if(
getenv("NSZombieEnabled") || getenv("NSAutoreleaseFreedObjectCheckEnabled")
) {
NSLog(@"--------------------------------------->NSZombieEnabled/NSAutoreleaseFreedObjectCheckEnabled enabled!");
}
有一个简单的方法,使NSZombie如果你是通过执行涉及XCode的第4版以下简单步骤:
请点击名称为Product choose - > edit scheme - > arguments选项卡的方案下拉条,然后在环境变量列中添加NSZombieEnabled,在值列中添加YES ...现在您已经通过使NSZombie在程序中找到错误来完成。
当你运行你的应用程序,你会得到一个错误信息在应用程序崩溃设定NSZombie状态启用,但最初使NSZombie之前,你可能会发现很难找出在自动释放池什么也正是错误的,就像死机,目前使用objective-c,BAD_ACCESS错误等gdb中断...通过启用NSZombie,你可以找到什么是正确的问题,如不正确的释放,试图重新访问,或不正确的释放内存等。错误可能是以下种类:
-[ExampleProgramViewController alertView:didDismissWithButtonIndex:]: message sent to deallocated instance 0x7068f70
代码必须执行什么方法? – 2011-04-20 07:18:13
任何地方,我把它放在开始的某个地方,所有我的其他调试输出开始之前,我可能会忽略它... – user387184 2011-04-21 19:47:20