Xcode malloc 错误调试



我有大量代码,它抛出以下错误/异常。

malloc: *** error for object 0xce52964: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug

如果我在所有内存管理功能(例如 NSZombies 等)的情况下运行它,那么它的功能就完美无缺。

我添加了一个类型 malloc_error_breakSymbolic Exception Breakpoint,它停在随机行上(NSLog(@"part6");我用来通过 NSLog 将其分解为多个部分来帮助调试我的代码)。

我也尝试在调试器中键入内容,这就是我得到的:

po 0xce52964
(int) $3 = 216344932 [no Objective-C description available]

有谁知道我如何尝试进一步调试它? 我不确定我的代码中是什么导致了这个问题。

启用 malloc 堆栈日志记录(可以在 Xcode 中完成 - 僵尸下方的几个复选框)。

然后运行/测试程序 - 重现问题。现在,使用 malloc_history 实用程序获取有关 malloc 在消息中标记的分配的详细信息。

相关内容

  • 没有找到相关文章

最新更新