iOS错误:检测到堆损坏,空闲列表已损坏,并且保护值不正确:0

时间:2018-09-20 07:49:50

标签: ios objective-c xcode10

GFF_MJ(3248,0x103f9ab80) malloc: Heap corruption detected, free list is damaged at 0x28298ffa0
*** Incorrect guard value: 0
GFF_MJ(3248,0x103f9ab80) malloc: *** set a breakpoint in malloc_error_break to debug

错误截图:

enter image description here

运行一段时间后,该应用程序始终崩溃,但是除上述提示外,我没有任何其他信息。 现在我不知道该如何解决,谁能帮助我?

谢谢。

3 个答案:

答案 0 :(得分:4)

这些错误并不有趣。最有可能的是,您的某处有缓冲区溢出,或者在释放内存并踩踏其他东西之后正在使用一块内存。

由于您可以使其在调试器中崩溃,因此更容易查找。

根据错误消息的指示,在malloc_error_break上设置断点开始。当您达到该断点时,将提供更多线索,但可能仍然相当模糊。但是,您将可以发布更多线索,我们可以从那里提供帮助。

答案 1 :(得分:0)

就我而言,这是模拟器(带有内存)的问题。

在清理构建文件夹或关闭模拟器并再次运行后,尝试在真实设备中对其进行编译。

答案 2 :(得分:0)

我在macOS上遇到此错误。清理构建文件夹解决了该问题。