記憶體問題主要是兩方面: 記憶體溢位, 野指標異常.
記憶體溢位: ios給每個應用程式一定的記憶體用於程式執行, 一旦超出記憶體上線, 程式就會crash
野指標: 記憶體空間已經被系統收回仍舊在只用這塊記憶體, 程式就會crash
記憶體管理方式: mrc, arc
mrc的記憶體管理機制是引用計數
arc是基於mrc的
引用計數+1: alloc, retain, copy
引用計數-1: release, autorelease(在未來的某一時刻釋放, 由最近的自動釋放池控制)
當物件被新增到容器(字典, 陣列)裡時,記憶體引用計數+1;
從容器裡移除時,記憶體引用計數-1.
當引用計數為0的時候, 會自動呼叫dealloc, 進行釋放
C 基礎 記憶體管理篇
記憶體管理是計算機程式設計最為基本的領域之一。在很多指令碼語言中,您不必擔心記憶體是如何管理的,這並不能使得記憶體管理的重要性有一點點降低。對實際程式設計來說,理解您的記憶體管理器的能力與 侷限性至關重要。在大部分系統語言中,比如 c 和 c 您必須進行記憶體管理。本文將介紹手工的 半手工的以及自動...
OC 記憶體管理基礎
oc記憶體管理基礎 本文 一.retain和release基本使用 使用注意 1.你想使用 占用 某個物件,就應該讓物件的計數器 1 讓物件做一次retain操作 2.你不想再使用 占用 某個物件,就應該讓物件的計數器 1 讓物件做一次release 3.誰retain 誰release 4.誰al...
Objective C 記憶體管理基礎
之前的兩篇拙文c語言 記憶體管理基礎 c語言 記憶體管理深入 介紹了關於c語言在記憶體管理方面的相關知識。但是對於從事ios開發的同胞們來說,顯然objective c用的更多,所以筆者想用兩篇文章盡量完整的介紹一下objective c的記憶體管理,本文為第一部分,將從類和物件 所有權策略及引用計...