Signal 11,iPhone 应用程序退出时出现分段错误
-
13-09-2019 - |
题
我有一个 iPhone 应用程序。看起来运行良好。当我将配置的 iPhone 连接到 Xcode 并运行应用程序时,控制台登录到管理器窗口,在使用 home 键退出应用程序时总是抱怨分段错误。
有其他人看到过这个吗?您知道问题可能是什么吗?我在后台使用线程加载网页,但退出时停止线程。
我的应用程序确实保存了一些持久信息。当我使用构建和分析函数时,我遇到了一些潜在的内存泄漏,但在每种情况下我都会分配一个对象并将其保存在数组中。
有什么想法吗,或者这是正常的吗?
解决方案
尝试使用 NSZombieEnabled 运行您的应用程序。这将告诉您是否过度释放了任何对象。要启用僵尸,请执行以下操作:
- 选择项目>编辑活动可执行文件以打开“可执行信息”窗口。
- 单击参数。
- 单击“环境中要设置的变量”部分中的添加(+)按钮。
- 在名称列中输入 NSZombieEnabled,在值列中输入 YES。
- 确保选中 NSZombieEnabled 条目的复选标记。
其他提示
退出时,应用程序可以过度释放物体释放尝试之前倾倒每个对象或做一些调试在dealloc方法。
也许你释放一些反对比保留计数多次。注释掉你-release
方法(或其他地方)dealloc
呼叫,直到找到元凶。
然后取消出调用,并在你的代码别处寻找你在哪里试图到该对象过度释放。
如果您使用的方便的方法,例如,(例如[NSString stringWithFormat:@"..."]
),而不是alloc-init
方法(例如[[NSString alloc] initWithFormat:@"..."]
)将所得便利对象被自动释放,并且不应被手动释放。
我的问题是uididfaker和locationholic在Cydia和卸载他们的Xcode运行在我的iPhone就好了。
不隶属于 StackOverflow