信号11,iphone App退出时的分段故障

时间:2009-12-04 22:00:14

标签: iphone segmentation-fault exit

我有一个iPhone应用程序。它似乎运行良好。当我连接到配置的iPhone到Xcode并运行应用程序时,控制台登录管理器窗口,在使用主页键退出应用程序时总是抱怨分段错误。

有没有其他人看过这个,你知道问题可能是什么吗?我使用一个线程在后台加载网页,但我在退出时停止了线程。

我的应用确实保存了一些持久性信息。当我使用构建和分析函数时,我得到了2个潜在的内存泄漏,但在每种情况下,我都在分配一个对象并将其保存在一个数组中。

任何想法,还是这是正常的?

4 个答案:

答案 0 :(得分:7)

尝试使用NSZombieEnabled运行您的应用程序。这将告诉您是否过度释放任何对象。要启用僵尸,请执行以下操作:

  
      
  1. 选择项目>编辑Active Executable以打开可执行信息   窗口。
  2.   
  3. 点击参数。
  4.   
  5. 单击“要在中设置的变量”中的添加(+)按钮   环境“部分。
  6.   
  7. 在“名称”列中输入NSZombieEnabled,在“值”列中输入“是”。
  8.   
  9. 确保选中NSZombieEnabled条目的复选标记。
  10.   

答案 1 :(得分:0)

退出时,您的应用程序可以过度释放对象,尝试在释放它之前转储每个对象,或者在dealloc方法中进行一些调试。

答案 2 :(得分:0)

也许你发布一些对象比保留计数多一些。在您找到罪魁祸首之前,在-release方法(或其他地方)中注释掉dealloc次来电。

然后取消注释该调用并查看代码中的其他位置,您尝试过度释放该对象。

如果您正在使用便捷方法,例如(例如[NSString stringWithFormat:@"..."])而不是alloc-init方法(例如[[NSString alloc] initWithFormat:@"..."]),则生成的便利对象将自动释放,不应手动释放

答案 3 :(得分:0)

我的问题是来自cydia的uididfaker和locholic,并在卸载它们之后在我的iphone上运行xcode就好了。