使用Xcode-Instruments中的Leaks檢測內(nèi)存泄漏步驟:
1、如圖所示,打開項目在頂部工具欄依次選中Xcode -- Open developer Tool -- Instruments

image.png
2、打開Instruments后查找Leaks

image.png
3、打開Leaks后,頂部按鈕功能依次為開始檢測/結(jié)束檢測,暫停檢測,選擇檢測設(shè)備,選擇檢測的項目

image.png
4、項目中添加會產(chǎn)生內(nèi)存泄漏的代碼(在模擬器iphone12上運行起來)
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
NSMutableArray *arr1 = [NSMutableArray array];
NSMutableArray *arr2 = [NSMutableArray array];
[arr1 addObject:arr2];
[arr2 addObject:arr1];
}
@end
5、在Leaks中選好設(shè)備iphone12和項目,在左側(cè)的Allocations和Leaks中選擇Leaks,點擊左上角開始檢測按鈕,此時Leaks會運行起項目。
如圖所示選擇Call Tree,Call Tree里顯示的是泄露內(nèi)存分配時的?;厮?/p>

image.png
6、進一步設(shè)置call Tree
Separate by Thread:?;厮莅凑站€程分離
Invert Call Tree:棧回溯順序顛倒
Hide System Libraries:隱藏系統(tǒng)?;厮?br>
Flatten Recursion:遞歸調(diào)用合并成一個

image.png
6、雙擊這里跳轉(zhuǎn)到問題代碼

image.png

image.png