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