objective-c(内存管理)
2015-02-22 10:13
183 查看
本文主要记录objective-c 内存管理的知识点;
1、objective-c的对象都是分配内存在堆上,与C的mallock和C++的new类似,只有int等系统变量分配内存在栈上;
2、objective-c没有java这般复杂的垃圾回收机制,它用的是引用计数,可以理解为创建该对象后,指向该对象首地址的指针是否在其他地方被引用,若增加引用则引用数加一,反之减一,当引用数为零时系统清除该变量。内部应该是堆上分配的地址重新设置为有效,也就是说可以再次分配给其他对象,存储该对象首地址的指针清除,类似C语言,free(ptr);ptr = null;
3、objective提供retain和release方法,调用前者引用计数加一,后者减一;
4、objective提供autoreleasepool(自动释放池)的修饰符,在此修饰符范围内,系统帮你维护内存的分配和释放;
1、objective-c的对象都是分配内存在堆上,与C的mallock和C++的new类似,只有int等系统变量分配内存在栈上;
2、objective-c没有java这般复杂的垃圾回收机制,它用的是引用计数,可以理解为创建该对象后,指向该对象首地址的指针是否在其他地方被引用,若增加引用则引用数加一,反之减一,当引用数为零时系统清除该变量。内部应该是堆上分配的地址重新设置为有效,也就是说可以再次分配给其他对象,存储该对象首地址的指针清除,类似C语言,free(ptr);ptr = null;
3、objective提供retain和release方法,调用前者引用计数加一,后者减一;
4、objective提供autoreleasepool(自动释放池)的修饰符,在此修饰符范围内,系统帮你维护内存的分配和释放;
相关文章推荐
- Objective-C内存管理教程和原理剖析(一)(autorelease与release)
- objective-c内存管理
- iPhone/Mac Objective-C内存管理教程和原理剖析 【一、基本原理】
- iPhone/Mac Objective-C内存管理教程和原理剖析(一)基本原理
- iPhone/Mac Objective-C内存管理教程和原理剖析 【四、系统自动创建新的autorelease pool】
- iOS开发系列—Objective-C之内存管理
- Objective-C(7)内存管理之MRC
- iPhone/Mac Objective-C内存管理教程和原理剖析
- Objective-C内存管理教程和原理剖析(四)系统自动创建新的autorelease pool
- Objective-C内存管理
- Objective-C(十五、内存管理,MRC,循环引用,dealloc和setter方法)——iOS开发基础
- objective-C中数组的内存管理机制以及遍历
- objective-C 中的内存管理解说
- iPhone/Mac Objective-C内存管理教程和原理剖析
- objective-c的内存管理
- Objective-C基础笔记(3)OC的内存管理
- iPhone/Mac Objective-C内存管理教程和原理剖析(一)基本原理
- iPhone/Mac Objective-C内存管理教程和原理剖析
- objective-c内存管理
- Objective_C内存管理_note