一般來說市框,在創(chuàng)建工程的時候枫振,我都會在Build Settings啟用Analyze During 'Build'粪滤,每次編譯時都會自動靜態(tài)分析雀扶。
這樣的話愚墓,寫完一小段代碼之后浪册,就馬上知道是否存在內存泄露或其他bug問題,并且可以修bugs斧账。
而在運行過程中咧织,如果出現EXC_BAD_ACCESS习绢,啟用NSZombieEnabled闪萄,看出現異常后败去,控制臺能否打印出更多的提示信息圆裕。
如果想在運行時查看是否存在內存泄露吓妆,使用Instrument Leak工具。
但是有些內存泄露是很難檢查出來,有時只有通過手動覆蓋dealloc方法舟奠,看它最終有沒有調用沼瘫。
其實對block進行內存泄漏的檢測主要的循環(huán)引用問題,這里可以使用Facebook的第三方框架FBRetainCycleDetector來進行檢測,
具體使用方法見下面鏈接https://github.com/facebook/FBRetainCycleDetector