iOS内存管理
什么是自动引用计数
- 自动引用计数(ARC,Automatic Reference Counting)是指内存管理中对引用采取自动计数的技术
- 自动引用计数降低了程序崩溃、内存泄漏等风险,减少了开发的工作量
- 在 LLVM 编译器中设置 ARC 为有效状态,就无需再次键入 retain 或者是 release 代码
内存管理的思考方式
- 自己生成的对象,自己所持有
- 非自己生成的对象,自己也能持有
- 不再需要自己持有的对象时释放
- 非自己持有的对象无法释放
对象操作 | Objective-C 方法 |
---|---|
生成并持有对象 | alloc/new/copy/mutableCopy 等方法 |
持有对象 | retain 方法 |
释放对象 | release 方法 |
废弃对象 | dealloc 方法 |
autorelease
- 生成并持有 NSAutoreleasePool 对象
- 调用已分配对象的 autorelease 实例方法
- 废弃 NSAutoreleasePool 对象