EXC_BAD_ACCESS
問題一直困擾著很多程序員,因為這樣的問題不夠直觀,因為一旦出現 EXC_BAD_ACCESS
,Xcode 馬上跳到 main.m 文件中,即使設置了全局斷點也很難定位到錯誤位置,需要花費很多時間才能解決。
后來了解到早在 Xcode 7 中,Apple 就為我們增加了關于這樣問題的調試選項 Runtime Sanitizer
,使用它,當有類似的問題出現時,我們會得到更詳細的錯誤信息,定位錯誤更簡單。
操作步驟:
Edit Scheme -> Run(Debug) -> Diagnostics -> Runtime Sanitization,勾選 Address Sanitizer。
1.png
當出現類似錯誤時,Xcode 會顯示出更加詳細的錯誤信息,甚至會有內存使用情況的展示。
2.png