仪器工具中的分配列表

时间:2014-08-13 12:31:48

标签: ios memory-leaks instruments

我正在使用“仪器工具”来跟踪和改进我的应用程序 我想知道" Allocations List"在仪器中做。

enter image description here

1 个答案:

答案 0 :(得分:1)

分配列表显示了您的应用所做的每个内存分配。如果打开扩展详细信息视图,则可以单步执行每个分配。在大多数情况下,检查每个内存分配是不必要的,因为iOS应用程序会进行如此多的内存分配。

大多数人会使用统计信息并调用树视图而不是分配列表。统计信息视图可让您查看应用正在使用的内存量。调用树视图允许您查找代码中分配最多内存的位置。但是当您需要深入了解应用程序的内存分配时,就会出现分配列表。

<强>更新

大多数专栏都是不言自明的。时间戳告诉您何时发生内存分配,相对于应用程序启动。 Live列告诉您内存是否已被释放。如果Live列中有一个点,则表示内存尚未释放。负责的库是分配内存的库。负责的调用者是分配内存的函数。地址是分配内存的地址。

“类别”列是最难解释的。在屏幕截图中,所有类别都是Malloc,这是一般的内存分配。 Instruments根据分配的大小分离这些分配,这就是截图中有Malloc 3 KB,4 KB,5 KB,6 KB,7 KB和12 KB的原因。其他常见类别是Apple的类,它们具有前缀NS,UI和CF。