zoukankan      html  css  js  c++  java
  • 【0

    一、内存管理概述

    • 垃圾回收机制(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. 非自己持有的对象无法释放

  • 相关阅读:
    租房
    NetBeans 时事通讯(刊号 # 103 May 18, 2010)
    美国的车库文化
    新《三国》的两点观后感
    欧洲足球逐渐失去冷门的魅力
    NetBeans 时事通讯(刊号 # 102 May 14, 2010)
    NetBeans 时事通讯(刊号 # 103 May 18, 2010)
    HTML 简史
    租房
    HTML 简史
  • 原文地址:https://www.cnblogs.com/jiangdaohong/p/4338335.html
Copyright © 2011-2022 走看看