Tsui的个人博客


  • 首页

  • 归档

  • 分类

  • 标签

iOS内存管理(转载)

发表于 2016-03-17   |   分类于 iOS

内存管理

堆:需要手动释放。

栈:系统自动管理。

所谓内存管理,就是对内存进行管理,涉及的操作有:

  • 分配内存 :比如创建一个对象,会增加内存占用
  • 清除内存 :比如销毁一个对象,能减小内存占用

内存管理的管理范围

  • 任何继承了NSObject的对象
  • 对其他非对象类型无效(int、char、float、double、struct、enum等)

只有OC对象才需要进行内存管理的本质原因

  • OC对象存放于堆里面
  • OC基础类型一般放在栈里面(栈内存会被系统自动回收)

引用计数器的常见操作

给对象发送一条retain消息,可以使引用计数器值+1(retain方法返回对象本身)

给对象发送一条release消息,可以使引用计数器值-1

给对象发送retainCount消息,可以获得当前的引用计数器值

需要注意的是: release并不代表销毁\回收对象,仅仅是计数器-1。

阅读全文 »
1…45
Tsui

Tsui

21 日志
4 分类
5 标签
GitHub
© 2015 - 2016 Tsui
由 Hexo 强力驱动
主题 - NexT.Muse