使用 VM Tracker 工具,我发现我的 iOS 应用程序上的虚拟内存使用量不断增长。正在增长的分配不会出现在常规分配工具中,我想知道确定它们来自哪里的过程是什么。正在增长的类别是 VM_ALLOCATE。
我在 vm_allocate 上放置了一个符号断点,以捕获我看到的特定大小的分配在仪器中泄漏(使用寄存器 $r2 作为大小参数)。但是,在应用程序的整个生命周期中,我只看到少数 4k 分配(来自调试 NSLog 调用),并且仪器中没有报告 1+ MB 分配。
我用来打破仪器中 VM_ALLOCATE 下报告的所有分配的方法是否正确?有什么想法我可以尝试确定不断增长的分配的来源吗?