我正在寻找一种方法来打印所有分配的对象,当我得到转储全部分配对象
applicationDidReceiveMemoryWarning
有什么方法,我可以看到在内存中哪些对象。一个系统API调用,一个框架,任何真正的。
我知道Clang &通过代码检查进行调试,但我正在寻找一种方法来查看在运行时为什么我有内存泄漏。
对此提出建议?
谢谢:)
我正在寻找一种方法来打印所有分配的对象,当我得到转储全部分配对象
applicationDidReceiveMemoryWarning
有什么方法,我可以看到在内存中哪些对象。一个系统API调用,一个框架,任何真正的。
我知道Clang &通过代码检查进行调试,但我正在寻找一种方法来查看在运行时为什么我有内存泄漏。
对此提出建议?
谢谢:)
使用仪器分配工具。您可以导航并查看所有活动对象。
我不知道如何在运行时自己完成所有对象的跟踪。如果您在调试期间正在执行此操作,则可以暂停执行,并使用仪器对流程进行“堆积”处理。这会告诉你的一切已被分配在堆上。
您可以使用仪器 - >泄漏工具来查看您的泄漏位置。它非常精确,你可以看到你分配对象的位置。
不完全;给出三个快照A,B和C(以及之前的基线),Heapshot向您显示在A点和B点之间分配的仍然存在于C点中的对象。普通的旧分配工具是OP所需要的。什么TomSwift说... – bbum 2011-03-01 04:51:35
@bbum:感谢您的澄清:) – 2011-03-01 05:17:56