OC 記憶體管理的重點

2021-09-17 02:36:13 字數 836 閱讀 2978

3.1. 什麼時候為物件傳送retain訊息.

當多1個人使用這個物件的時候,應該先為這個物件傳送retain 訊息. +1

3.2 什麼時候為物件傳送releaee訊息.

當少1個人使用這個物件的時候.應該為這個物件傳送1條release 訊息. -1

3.3 在arc機制下,retain, release, dealloc 這些方法方法無法呼叫.

3.4 記憶體管理的原則

1). 有物件的建立,就要匹配1個release

2). retain的次數和release的次數要匹配.

3). 誰retain. 誰release.

4). retain個數與release 一定要平衡.

//原則1: 有物件的建立,就要匹配1個release, 否則這個物件就收不了

person *p1 = [person new]; //記數:1

[p1 setname:@"jack"];

[p1 release]; //記數:0

//原則2: retain的次數和release的次數要匹配. 達到平衡

person *p2 = [person new]; //記數:1 要與release 匹配,一般寫完呼叫,馬上寫乙個release

[p2 setname:@"jack"];

[p2 retain];

[p2 retain];

[p2 release];

[p2 release];

[p2 release]; //記數:0

OC重點 記憶體管理

記憶體管理 student student student alloc initwithname 小王 nslog lu student retaincount 1 myclass myclass myclass alloc init nslog lu myclass retaincount 1 m...

oc的記憶體管理

記憶體管理在oc中是非常重要的,如果乙個專案記憶體沒有管理好,那麼整個專案已經是沒有用了。所以記憶體管理是非常重要的。那麼為什麼要進行記憶體管理呢?由於移動裝置的記憶體極其有限,所以每個 所佔的記憶體也是有限制的,當 所占用的記憶體較多時,系統就會發出記憶體警告,這時需要 一些不需要再繼續使用的記憶...

OC的記憶體管理

程式在執行的過程中通常通過以下行為,來增加程式的的記憶體占用。每個軟體所能占用的記憶體也是有限的當程式所占用的記憶體較多時,系統就會發出記憶體警告,這時就得 一些不需要再使用的記憶體空間。比如 一些不需要使用的物件 變數等如果程式占用記憶體過大,系統可能會強制關閉程式,造成程式崩潰 閃退現象,影響使...