內(nèi)存分析可以分為靜態(tài)內(nèi)存分析和動態(tài)內(nèi)存分析豌习;主要是利用Xcode自帶工具進行內(nèi)存泄露監(jiān)測柴墩;
靜態(tài)內(nèi)存分析:
概念:
不運行程序,直接對代碼進行內(nèi)存分析,分析是否有內(nèi)存泄露
優(yōu)點:
分析速度快,可以快速對所有的代碼進行內(nèi)存分析,查找出來對應(yīng)的內(nèi)存泄露
缺點:
不一定準(zhǔn)確,但是基本準(zhǔn)確.根據(jù)語法上下文來分析你的程序到底有沒有內(nèi)存泄露
靜態(tài)內(nèi)存分析
內(nèi)存泄露
release內(nèi)存泄露的對象
動態(tài)內(nèi)存分析:
概念:
真正運行起來程序,并且借助于具來分析代碼是否有某些地方產(chǎn)生了內(nèi)存泄露
優(yōu)點:
分析非常準(zhǔn)確,并且只要分析出來有內(nèi)存泄露,基本可以斷定代碼一定有問題
缺點:
需要一處一處來分析,并不能對全局的代碼進行分析. 注意:在真實開發(fā)中,應(yīng)該是靜態(tài)內(nèi)存分析和動態(tài)內(nèi)存分析結(jié)合的方式來分析內(nèi)存.
工具:instruments 幫助文檔
程序運行之后會出現(xiàn)下面界面:
內(nèi)存泄露
找到對應(yīng)的代碼進行修改就可以了鹃彻!如果你的Xcode沒有顯示相應(yīng)的方法名,那就要重新安裝嘍贩幻!我看了官方文檔并有說明吸申,我想應(yīng)該是Xcode自己的一個bug吧!