ObObjective-C:笔记:内存管理
2015-12-22 00:00
447 查看
内存的5大分区
由下至上:
代码区>>数据区>>BSS段:这个三个区域,当程序启动的时候会自动加载。这写区间的内存由系统管理。
全局变量未初始化存储在BSS段,初始化的,存储在数据区。所以少用全局变量。
再往上:
堆区>>栈区:
栈区分配地址,是从高到底。
堆区是从低到高分配地址。
局部变量是保存在栈区。系统会自动管理。
栈区也不需要程序员管理。
只有堆区需要程序员进行内存管理。
主要是对象的创建和回收。
OC内存管理的范围:
对象和其他数据类型在系统中的存储空间是不一样的,其它的局部变量存储在栈区,对象存储在堆区。栈区的变量会动态分配空间,自动释放。但是堆区的对象类型不会。
内存管理主要是针对类的实例对象所占内存。
由下至上:
代码区>>数据区>>BSS段:这个三个区域,当程序启动的时候会自动加载。这写区间的内存由系统管理。
全局变量未初始化存储在BSS段,初始化的,存储在数据区。所以少用全局变量。
再往上:
堆区>>栈区:
栈区分配地址,是从高到底。
堆区是从低到高分配地址。
局部变量是保存在栈区。系统会自动管理。
栈区也不需要程序员管理。
只有堆区需要程序员进行内存管理。
主要是对象的创建和回收。
OC内存管理的范围:
对象和其他数据类型在系统中的存储空间是不一样的,其它的局部变量存储在栈区,对象存储在堆区。栈区的变量会动态分配空间,自动释放。但是堆区的对象类型不会。
内存管理主要是针对类的实例对象所占内存。
相关文章推荐
- OObjective-c CALayer 动画
- objective-c 转场动画
- OBjective-c 弹簧效果
- objective-c 逐帧动画
- Object-C 一些关键字的理解 @synchronized、__block、class等。。。
- “object name conflicts in archive”的解决办法
- Mybatis3源码分析(12)-Sql解析执行-MetaObject
- 【Objective-C学习记录】第二十天
- Android中两个activity之间传递list<object>
- 关于Objective-C 错误代码 Expression is not assignable 引发的问题
- Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks程序(Python)配置问题总结
- Objective-c语言_协议
- Objective-c语言_延展
- Objective-c语言_类目
- dYSM分析崩溃日志
- #Objective - C - Fifth-Day 三大容器(数组、字典、集合)常用语法归纳总结
- JAVA 1.6源码解析-Object类
- The constness of a method should makes sense from outside the object
- Informatica Connection Objects
- Objective-c语言_文件基本操作