0

是否可以列出所有存在于堆中并由我的应用程序创建的对象?我认为这是可能的,Instruments 会做这样的事情。

4

1 回答 1

0

仪器

在仪器中,选择内存系统中的分配模板,您将能够查看所有存在于堆中或曾经在堆中分配的对象。

这里也有相当好的过滤,如果你有很多内存,或者一个不会创建/销毁很多对象的应用程序,你甚至可以跟踪引用计数。

代码

没有一个 API 可以正式研究 malloc/free 数据结构,所以如果您有一个令人信服的非调试需求来查看单个分配,您可能正在考虑用专门的检测版本替换标准内存分配例程(有点像 guard malloc 所做的 - Guard Malloc)。

于 2013-06-13T11:09:19.767 回答