OSX / ObjectiveC:列出我的应用程序在堆中创建的所有对象

时间:2013-06-13 10:24:21

标签: objective-c macos heap

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

1 个答案:

答案 0 :(得分:0)

<强>仪器

在乐器中,选择内存系统中的分配模板,您将能够查看 live 在堆中,或者曾在堆中分配

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

<强>代码

没有一个API可以正式查看malloc / free数据结构,所以如果你有一个令人信服的非调试需要查看单个alloc,你可能会考虑用一个标准的内存分配例程来替换它们。专门的仪器化版本(有点像malloc所做的那样 - Guard Malloc)。