我在启动时遇到EXC_BAD_ACCESS崩溃,Xcode表示崩溃发生在main.m文件的NSApplicationMain
行。崩溃发生在99%的时间,当我使用僵尸启动它时,崩溃永远不会发生。谁看过这个吗?我怎么可能调试这个?
答案 0 :(得分:1)
如果您正在运行Xcode4,则默认情况下显示的调用堆栈非常少,请将滑块向下移动到右侧。您可能找不到任何代码,但您应该能够很好地了解正在发生的事情。如果它是延迟后的通知或选择器,您将看到Runloop调度,这也将为您提供线索。
最后,去旧学校,我们在编码论坛,打卡和每天只有几个编译的那天做的方式:学习你的代码。知道每行代码的作用以及代码的作用。
正如@Danra所说,请运行Xcode Analyzer并修复所有投诉。
答案 1 :(得分:1)
运行僵尸启用解决错误访问的原因可能是:a)在此模式下,当保留计数达到零时,对象实际上不会被释放,并且b)原始崩溃是由于访问已经解除分配的对象
然而,在启用僵尸的情况下,我认为您应该在调试控制台中看到对已解除分配的对象的访问权限,而不是崩溃。
我还建议使用静态分析器(XCode菜单中的“Analyze”),希望它找到罪魁祸首。