iOS關于堆棧的理解

棧區(qū)(stack):存放局部變量和函數(shù)的參數(shù)值候生,由編譯器自動釋放內存同眯,當函數(shù)結束時自動釋放,其操作方式類似于數(shù)據(jù)結構中的棧唯鸭,棧內存分配運算內置于處理器的指令集须蜗,效率較高,但是分配的內存比較小。

堆區(qū)(heap) :就是通過new malloc 分配的內存塊明肮,他們的生命周期 由程序員自行管理菱农,可以是全局變量,也可以是局部變量柿估,在應用程序結束的時候 自動釋放循未。

棧區(qū)生命周期理解:

-(void)viewDidLoad{
[super viewDidLoad];
int a = 0;
int b = 1;
}

如上代碼,當viewDidLoad函數(shù)結束時秫舌,局部變量a和b的作用域已經(jīng)結束的妖,編輯器就會釋放掉 a和b 的內存。

堆區(qū) 生命周期理解:

@interface ViewController ()
{
    NSArray * dataArr;
}
@end

@implementation ViewController

- (void)viewDidLoad {
       [super viewDidLoad];
       dataArr = [NSMutableArray array];
}

-(void)viewDidAppear:(BOOL)animated{
          [super viewDidAppear:animated];
          daArr =@[@"1",@"2"];
}

在viewDidLoad函數(shù)中足陨,對dataArr進行初始化嫂粟,在堆中分配內存塊,當viewDidLoad函數(shù)結束時钠右,dataArr因為是全局變量沒有被銷毀赋元,程序員就可以自己來管理它的生命周期。

總結:
棧區(qū)和堆區(qū)的區(qū)別主要為以下幾點:

1.對于棧來說飒房,內存管理由編譯器自動分配釋放;對于堆來說媚值,釋放工作由程序員控制狠毯。
2.棧的空間大小比堆小許多。
3.棧是機器系統(tǒng)提供的數(shù)據(jù)結構褥芒,計算機會在底層對棧提供支持嚼松,所以分配效率比堆高。
4.棧中存儲的變量出了作用域就無效了锰扶,而堆由于是由程序員進行控制釋放的鹤盒,變量的生命周期可以延長喘批。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子洛心,更是在濱河造成了極大的恐慌,老刑警劉巖考蕾,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掖肋,死亡現(xiàn)場離奇詭異,居然都是意外死亡蹂楣,警方通過查閱死者的電腦和手機俏站,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來痊土,“玉大人肄扎,你說我怎么就攤上這事。” “怎么了犯祠?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵萌丈,是天一觀的道長。 經(jīng)常有香客問我雷则,道長辆雾,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任月劈,我火速辦了婚禮度迂,結果婚禮上,老公的妹妹穿的比我還像新娘猜揪。我一直安慰自己惭墓,他們只是感情好,可當我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布而姐。 她就那樣靜靜地躺著腊凶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拴念。 梳的紋絲不亂的頭發(fā)上钧萍,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機與錄音政鼠,去河邊找鬼风瘦。 笑死,一個胖子當著我的面吹牛公般,可吹牛的內容都是我干的万搔。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼官帘,長吁一口氣:“原來是場噩夢啊……” “哼瞬雹!你這毒婦竟也來了?” 一聲冷哼從身側響起刽虹,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤酗捌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后状婶,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體意敛,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年膛虫,在試婚紗的時候發(fā)現(xiàn)自己被綠了草姻。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡稍刀,死狀恐怖撩独,靈堂內的尸體忽然破棺而出敞曹,到底是詐尸還是另有隱情,我是刑警寧澤综膀,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布澳迫,位于F島的核電站,受9級特大地震影響剧劝,放射性物質發(fā)生泄漏橄登。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一讥此、第九天 我趴在偏房一處隱蔽的房頂上張望拢锹。 院中可真熱鬧,春花似錦萄喳、人聲如沸卒稳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽充坑。三九已至,卻和暖如春染突,著一層夾襖步出監(jiān)牢的瞬間捻爷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工觉痛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留役衡,地道東北人。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓薪棒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親榕莺。 傳聞我的和親對象是個殘疾皇子俐芯,可洞房花燭夜當晚...
    茶點故事閱讀 43,472評論 2 348