Objective-C高级编程
内存管理的思考方式
自己生成的对象,自己持有
非自己生成的对象, 自己也能持有
不再需要自己持有的对象时释放
非自己持有的对象无法释放
对象操作与Objective-C方法的对应
对象操作 | Objective-C方法 |
---|---|
生成并持有对象 | alloc/copy/mutableCopy等 |
持有对象 | retain |
释放对象 | release |
废弃对象 | delloc |
区域
NSDefaultMallocZone
,NSZoneMalloc
包含的NSZone
是为了防止内存碎片化而引入的结构,对内存分配的区域本身进行多重化管理,根据使用对象的目的,对象的大小分配内存,从而提高内存管理的效率