iOS 內存管理

ARC 下

__strong:強引用,持有所指向對象的所有權,無修飾符情況下的默認值.如需強制釋放,可置 nil
__weak:弱引用,不持有所指向對象的所有權,引用指向的對象內存被回收之后,引用本身會置 nil,避免野指針.避免循環(huán)引用,會將對象注冊到 autoreleasepool
unsafe_unretained:相當于 assign.直接賦值.引用計數(shù)不變

屬性的內存管理

assign

直接賦值诉儒,一般用來修飾基本數(shù)據(jù)類型。當然也可以修飾ObjC對象辈末,但是不推薦寄啼,因為被assign修飾的對象釋放后,指針還是指向釋放前的內存蠢挡,在后續(xù)操作中可能會導致內存問題引發(fā)崩潰儒鹿。

retain

retain 和 strong 一樣,都用老修飾 ObjC對象,使用 set方法賦值時,實質上是先保留新增,再釋放舊值,再設置新值,避免新舊值一樣時導致對象唄釋放的問題.

copy

一般用來修飾 String,Dict,Array等需要保護其封裝性的對象,尤其是在其內容可變的情況下,因此會拷貝(深拷貝)一份內容跟屬性使用,避免可能造成的對元內容進行改動.使用 set方法賦值時,實質上是會先拷貝新值,在釋放舊值,再設置新值.實際上,遵守 NSCopying的對象都可以使用 Copy,當然如果你確定要共用同一份可變內容,你也可以使用 strong 或者 retain

weak

ARC新引入修飾詞化撕,可代替assign,比assign多增加一個特性(置nil)约炎。weak和strong一樣用來修飾ObjC對象植阴。使用set方法賦值時,實質上不保留新值圾浅,也不釋放舊值掠手,只設置新值。

strong

ARC新引入修飾詞贱傀,可代替retain惨撇,ARC一般都寫strong。

unsafe_unretained

等價于assign,可以用來修飾數(shù)據(jù)類型和OC對象,但是不會使計數(shù)器加1,且對象銷毀時也不會將對象指向nil,容易造成野指針錯誤府寒。

block的內存管理

如果你使用@property去聲明一個block的時候,一般使用copy來進行修飾(當然也可以不寫报腔,編譯器自動進行copy操作)株搔,盡量不要使用retain。
__weak typeof(self) weakSelf = self;

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末纯蛾,一起剝皮案震驚了整個濱河市纤房,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌翻诉,老刑警劉巖炮姨,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異碰煌,居然都是意外死亡舒岸,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門芦圾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蛾派,“玉大人,你說我怎么就攤上這事『檎В” “怎么了眯杏?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長壳澳。 經常有香客問我岂贩,道長,這世上最難降的妖魔是什么巷波? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任河闰,我火速辦了婚禮,結果婚禮上褥紫,老公的妹妹穿的比我還像新娘姜性。我一直安慰自己,他們只是感情好髓考,可當我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布部念。 她就那樣靜靜地躺著,像睡著了一般氨菇。 火紅的嫁衣襯著肌膚如雪儡炼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天查蓉,我揣著相機與錄音乌询,去河邊找鬼。 笑死豌研,一個胖子當著我的面吹牛妹田,可吹牛的內容都是我干的。 我是一名探鬼主播鹃共,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼鬼佣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了霜浴?” 一聲冷哼從身側響起晶衷,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎阴孟,沒想到半個月后晌纫,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡永丝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年锹漱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片类溢。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡凌蔬,死狀恐怖露懒,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情砂心,我是刑警寧澤懈词,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站辩诞,受9級特大地震影響坎弯,放射性物質發(fā)生泄漏。R本人自食惡果不足惜译暂,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一抠忘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧外永,春花似錦崎脉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至祭衩,卻和暖如春灶体,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背掐暮。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工蝎抽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人路克。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓樟结,卻偏偏與公主長得像,于是被迫代替她去往敵國和親衷戈。 傳聞我的和親對象是個殘疾皇子狭吼,可洞房花燭夜當晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內容

  • Copyright ? 2017年ZaneWangWang. All rights reserved. 如果你看到...
    2897275c8a00閱讀 903評論 0 1
  • 機制 OC采用引用計數(shù)器對內存進行管理,當一個對象的引用計數(shù)(retainCount)為0殖妇,則被釋放。 引用計數(shù)分...
    806349745123閱讀 12,687評論 2 16
  • 貌似每個iOS開發(fā)者都有一篇屬于自己的內存管理破花,記錄了自己對內存管理理解的深度以及廣度谦趣,所以我也來記錄一下我的理解...
    Bugfix閱讀 2,251評論 0 3
  • 轉自iOS經典面試題總結--內存管理 - CocoaChina_讓移動開發(fā)更簡單 內存管理 1.什么是ARC? A...
    赤洱閱讀 219評論 0 0
  • 周末座每,暴雨前鹅。 周六帶著低燒跑到很遠的郊區(qū)參加考試,嗯峭梳,裸考舰绘,提前一個小時交卷蹂喻,最近人品都不行,估計是做分母了捂寿。暴雨...
    趙奕筱閱讀 414評論 0 1