国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【0-1】OC內存管理

2019-11-14 19:27:05
字體:
來源:轉載
供稿:網友

一、內存管理概述

  • 垃圾回收機制(GC):由系統管理內存,程序員不需要管理。
  • OC中的垃圾回收:在OC2.0版加入垃圾回收。
  • OC與iOS:OC有垃圾回收機制,但是iOS屏蔽了這個功能。原因:iOS運行在移動設備上,硬件資源有限(內存、電量,發熱控制等方面),而垃圾回收機制有一定弊端(以java的垃圾回收機制為例,它的垃圾回收并不是當程序結束之后,立刻回收內存,而是當程序需要內存,而剩余內存不夠當前申請內存的程序使用時,才進行內存的回收)。即OC有垃圾回收機制,iOS平臺屏蔽了OC垃圾回收的功能,而Mac os x是有GC的。
  • 因此,在iOS平臺進行軟件開發,需要程序員進行內存的管理。

二、iOS的內存管理  

  內存管理的范圍:內存管理管理的是 堆區 的內存

  iOS通過引用計數管理內存。在iOS5.0之后,Xcode又加入了ARC(自動引用計數),簡化了內存管理。

  iOS上的內存管理方式分為MRC和ARC。兩者的區別在于MRC是由程序員使用引用計數,管理內存;而ARC是由系統自動管理引用計數。

  內存管理的原則:

  1. 自己創建的對象,自己持有

  2. 非自己創建的對象,自己也能持有

  3. 不再需要自己持有對象時,釋放對象

  4. 非自己持有的對象無法釋放


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 社旗县| 平邑县| 西盟| 庆安县| 夏津县| 韩城市| 监利县| 烟台市| 兴仁县| 阳原县| 新昌县| 合江县| 瑞丽市| 卓资县| 万荣县| 柏乡县| 阿巴嘎旗| 宜川县| 玛曲县| 彝良县| 巢湖市| 宁安市| 桓仁| 偃师市| 揭东县| 溧水县| 邛崃市| 石柱| 沈阳市| 洛隆县| 西昌市| 类乌齐县| 石家庄市| 通海县| 荃湾区| 习水县| 齐河县| 秭归县| 个旧市| 白城市| 武义县|