OC-内存管理机制

1.内存管理机制

  • 被称为“引用计数”(retain counting)
  • 每一个对象都有一个引用计数(retain count)

2.为什么要管理内存

在我们iOS开发的过程中,程序内存超过20M会收到内存警告,到30M的时候程序就会闪退,这可能就是许多开发者崩溃的地方。

3.iOS的内存机制主要分为 ARC 和 MRC 

  • ARC 自动管理内存
  • MRC 手动管理内存

4.内存管理的原则

  •   内存管理的本质就是对内存引用计数的管理
  •   有+1必须有对应的-1
  •   只有看到alloc,retain,copy,就需要在当前的方法或者内部进行releas;
  •   一个指针指向被retain,alloc,copy,就需要在当前的方法或者类内部进行release.
  •   便利构造器创建的对象,已经在方法内部标识记过一次autorelease
  •   容器的内存管理:一个对象被放到容器中,这个对象的引用计数+1,对象从容器中被移除的时候,这个对象引用计数会 -1.

 

5.系统回收内存的方法 dealloc

     永远不要调用这个方法

     在MRC下,重写这个方法的时候需要在最后一行写一个[super dealloc];

posted @ 2015-11-12 20:55  jacky_辉  阅读(157)  评论(0)    收藏  举报