天天看點

iOS記憶體管理機制解析之MRC手動引用計數機制

iOS的記憶體管理機制ARC和MRC是程式員參加面試基本必問的問題,也是考察一個iOS基本功是 否紮實的關鍵,這樣深入了解記憶體管理機制的重要性就不言而喻了。

iOS 5以前 :MRC(手動引用計數)

iOS 5及以後:ARC (自動引入計數)

“誰開辟申請,誰及時合理釋放” 面對自己申請的記憶體空間是要及時進行回收的:

對象存儲在棧上,可能會大量的占用記憶體,記憶體不足造成程式閃退(也就是所說的記憶體洩露)

提前釋放掉,倘若後面繼續對該對象進行引用操作,會出現崩潰,出現<code>EXC_BAD_ACCESS</code>操作已經釋放掉的對象的崩潰提示。(也就是所說的野指針)

記憶體管理原則 —-配對原則

解釋:使引用計數(retainCount)+1的時候必須相對應的出現使引用計數-1

<code>new</code> <code>copy(mutablecopy)</code> <code>retain</code> <code>alloc</code>

<code>release</code> <code>autorelease</code>

正藏情況下能被系統回收的對象唯一依據是該對象的引用計數(retainCount)為0

繼續閱讀