tim*_*man 9 macos grand-central-dispatch ios objective-c-blocks xcode-instruments
第一次提问,所以不要反对我......
对于我创建的标准对象以及子类,在Allocations或Leaks Instruments中查找特定对象非常简单.即如果我想看到一个名为ViewController的UIViewController的子类,我可以滚动分配工具并查看生物对象的数量增加和减少.同样,如果该对象泄露,Leaks Instrument将列出该对象.我甚至可以搜索特定的对象.
但是,我不确定在寻找Objective-C块时要寻找什么.我在Leaks Instrument中注意到泄漏的块会变成__NSMallocBlock.但是,使用分配工具时,不会显示对__NSMallocBlock的搜索.
任何想法在分配工具中寻找什么来跟踪Objective-C块?
非常感谢
看来,至少从 Xcode 4.2.1 开始,Blocks(如 (^) 中,我将使用大写/粗体)在分配工具中显示为一般 Malloc 内存块(如内存块,小写字母不加粗)。
因此,其中 NN 是该BlockMalloc NN Bytes所需的字节数。通常是 Malloc 32 或 Malloc 64,具体取决于该块可能捕获的内容。
当然,很可能还有大量相同大小的其他 Malloc 块。如果您按负责任的呼叫者排序,可能会帮助您将其过滤掉。