你真的會使用Xcode instruments查找內(nèi)存泄漏嗎?

很多朋友在面試中都會被問到這個問題,結(jié)果答地并不好,這是其實是實操的問題

我今天就和大家簡單分享一下怎么使用這個leak檢測工具.直接上圖:


點擊上面Profile ,稍等便可進入Xcode內(nèi)部自帶的instruments工具


點擊進去后,點擊左上角的紅點,可以進行內(nèi)存檢測


這里可以內(nèi)存多少,有多少對象內(nèi)存泄漏

點擊下邊leak checks ,可以看到下邊欄有三個選項 leak,Cycles & Roots, Call Tree,分別對應(yīng)的是內(nèi)存泄漏,循環(huán)引用,調(diào)用樹. leak點擊右邊紅框類可以進入內(nèi)存泄漏的代碼區(qū)域.?

Cycles & Roots 可以看到循環(huán)引用的環(huán),我的成環(huán)圖找不到了,從Detail中是可以分為simple Cycle 簡單環(huán)(兩個對象),還是Complex Cycle復(fù)雜環(huán)(涉及多個對象引用成環(huán)).

Call Tree 就是調(diào)用堆棧,如果你的內(nèi)存泄漏都是第三方框架之中,那么極有可能是你使用第三方不當(dāng)所致,可以好好看一下調(diào)用堆棧,是哪里調(diào)用了.紅框中區(qū)域表示內(nèi)存的泄漏出現(xiàn)的概率.

下面是我找到的調(diào)用堆棧中泄漏代碼中方法出處:人頭標(biāo)志是程序員自己寫的代碼

其實,還是那句話:第三方雖然簡單,幾句話搞定,但是你不懂原理,還是會使用出問題來.

寫代碼做事情,還是要知其然還要知其所以然才行.

今天分享就到這里了.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容