首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Lion下的Xcode4.1的工具中启用NSZombie?

如何在Lion下的Xcode4.1的工具中启用NSZombie?
EN

Stack Overflow用户
提问于 2011-07-23 10:55:05
回答 3查看 3.2K关注 0票数 4

这只是关于新的Xcode 4.1,特别是在Lion上运行的。如何在工具中启用NSZombie?它不再像在Xcode 4.0中那样在启动配置下的(i)图标中进行分配。也没有一个叫做僵尸的图书馆条目。

当然,问题是我不能退回到Xcode4.0,因为它拒绝在Lion下运行,所以我陷入了困境!有没有其他使用Lion的前沿开发人员,比我更有经验,可以帮助挖掘出这一点?谢谢。-Ric

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-13 03:17:38

关于我自己的问题,我从苹果得到了一个非常有用的答案。它是逐字记录的-

ME:关于如何使用Xcode 4.1.1和/或Instruments在设备上测试这些难处理的释放对象,有没有更新?

苹果:首先,上面在苹果论坛上显示的黑客已经被操作系统的内部变化所取代,即僵尸设置现在由CF完成。您可以使用以下代码强制启用僵尸:

外部空_CFEnableZombies(空);

int main(int argc,char **argv) { _CFEnableZombies();

代码语言:javascript
复制
... rest of your main ...

}

重要提示:_CFEnableZombies函数是私有的,因此您甚至不需要考虑将此代码放入生产应用程序中。但是,这不是秘密;您可以通过查看Lion的Darwin开放源码来了解它是如何实现的。

http://www.opensource.apple.com/source/CF/CF-635/CFRuntime.c

如果你这样做,你的应用程序将停止(与断点异常)时,你的消息僵尸,无论你如何运行它。因此,您可以使用分配工具在Instruments中运行它,并获得僵尸检测和分配跟踪。

请注意,当向僵尸发送消息时,系统会打印如下内容:

*-:消息发送到已释放的实例“

这不会出现在Instruments控制台区域中;您必须使用Xcode管理器(或iPCU)才能查看它。

分享和享受

奎因“爱斯基摩人”Apple开发者关系、开发者技术支持、核心操作系统/硬件

我:希望这对你们中的一些人在这种情况下是有用的信息。

票数 7
EN

Stack Overflow用户

发布于 2011-07-23 11:57:00

它是一种独特的乐器:

票数 3
EN

Stack Overflow用户

发布于 2011-08-02 01:49:10

还有另一种在设备上运行NSZombie的方法,但这是通过XCode 4而不是仪器来完成的。

要在设备上运行NSZombie,请打开您的XCode项目并单击顶部菜单项“产品”,然后按住alt并单击“运行”。这将打开一个单独的窗口,在该窗口的底部您将看到“环境变量”。点击"+“并输入"NSZombieEnabled”作为名称,输入"YES“作为值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6797944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档