列出Xcode, iOS中最后的X malloc/free调用



在Xcode中调试iOS,设置以下环境变量:

MallocCheckHeapStart=1
MallocCheckHeapEach=10
MallocStackLogging=1
MallocStackLoggingNoCompact=1

如果堆检查器发现损坏,它将报告并中断,每10次检查堆操作。

那么我怎么知道最后10个堆操作是什么呢?

我知道malloc_info --stack-history可以给我一个特定指针的历史,但在这种情况下,我不知道任何指针,我只知道堆损坏发生在最后10个操作。

是否有一种方法可以列出最后X堆操作,以便我可以找到堆损坏的罪魁祸首?

你已经读过这篇文章了吗?这里引用了gdb命令malloc_history

我不确定这是否是你要找的,但也许它有帮助。

最新更新