iOS与OSX 多线程和内存管理  总结

一、              自动引用计数

1.自动引用计数(ARC)就是指内存管理中对引用采用自动计数的技术。

满足以下条件即可使用这种功能:

Xcode 版本为4.2以上;

使用LLVM编译器 版本为3.0以上;

编译器选项设置ARC为有效;

2.内存管理/引用计数

内存管理的思考方式:

2.1自己生成的对象,自己持有;

2.2非自己生成的对象,自己也能持有;

2.3不需要自己持有的对象时释放;

2.4非自己持有的对象无法释放;

2.1自己生成的对象,自己持有:

使用以下名称开头的方法意味着自己生成的对象只有自己持有

alloc;

new;

copy;

mutableCopy;

2.2非自己生成的对象,自己也能持有:

获取对象的方法还有:NSMutableArray 类 的array 类方法

代码示例:

取得非自己生成,非自己持有的对象:

id obj = [NSMutableArray     array ];

自己持有对象

[obj retain];

2.3不需要自己持有的对象时释放:

自己释放对象

[obj release];

2.4非自己持有的对象无法释放

代码可以编译通过,但是强行释放会导致程序崩溃

3.alloc/retain/release/dealloc的实现

在Objective-C的对象中存有引用计数这一整数;

调用 alloc 或是 retain 方法后,引用计数加1;

调用 release 后,引用计数值减1;

引用计数值为时,调用dealloc方法废弃对象;

最新文章

  1. Django admin 权威指南(一)
  2. 漫谈C语言结构体struct、公用体union空间占用
  3. canvas判断边距,反弹和拖拽的综合实例
  4. shell script 学习笔记-----if,for,while,case语句
  5. IOS开发UI篇之tableView 的用法详解
  6. mysql 在线修改表结构工具 gh-ost
  7. 关于IPv6
  8. RSA算法详解及C语言实现
  9. java中取得上下文路径的方法
  10. ios7学习之路六(隐藏状态栏 )
  11. Lustre文件系统测试——obdfilter-survey测试
  12. C:\WINDOWS\system32\wmp.dll”受到“Windows 系统文件保护”
  13. 手把手教你用webpack3搭建react项目(开发环境和生产环境)(一)
  14. list标准函数的模拟
  15. 项目笔记:2017年(SSM架构)
  16. Log4j 日志记录
  17. mysql 多行合并一行
  18. 一些基于jQuery开发的控件
  19. java网络通信:HTTP协议 之 Sessions与Cookies
  20. 《挑战程序设计竞赛》2.1 广度优先搜索 AOJ0558 POJ3669 AOJ0121

热门文章

  1. iOS定位到崩溃代码行数
  2. Struts2复习笔记
  3. Java 基础知识总结 (三、运算符)
  4. 初步认识JUnit
  5. JS事件冒泡
  6. USB协议(1)
  7. ICMP
  8. 20145225唐振远 实验二 "Java面向对象程序设计"
  9. struts2获取web元素的方式和方法
  10. java 字符串截取