内存调试一些方法:
1、signal SIGABRT:
越界,访问没有初始化的地址或者错误地址
方法一:image lookup --address
方法二:全局断点:Breakpoint navigator —> Create a breakpoint —> Exception Breakpoint
2、EXC_BAD_ACCESS
向某块内存发送消息,但是该内存无法响应对应的消息指令。向一个已释放的对象发送消息。
方法一:打开僵尸🧟♀️对象调试:Edit Scheme —> Diagnostics —> Memory Management —> Zombie Objects
方法二:符号断点:Breakpoint navigator —> Create a breakpoint —>Symbolic Breakpoint
方法三:Address Sanitizer:Target —> Edit Scheme —> Diagnostics —> Runtime Sanitization —> Address Sanitizer
3、Memory Leak
循环引用
方法一:Instruments->Leak
方法二:Debug Memory Graph
Not Release
单纯的没有释放,可能 VC 的 dealloc 走了
4、Analyze静态分析
Product —> Analyze(Shift + Command + B)
内存调试一些方法
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 【转载】曾梦想仗剑走天涯 1.Xcode IDE概览 说明:从左到右,依次是“导航窗格(Navigator)->边...
- NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了。 一、Memory Graph Xc...