Objective-C 基础教程第九章,内存管理
目录
Object-C 基础教程第九章,内存管理
前言:
最近事情比较多,很久没有来更新文章了。
刚好最近又空闲出来点时间,赶紧继续学习OC并且做笔记,这次要学习的是OC的内存管理。
对象生命周期
正如现实世界中的鸟类和蜜蜂一样,程序中你的对象也有生命周期。
对象的生命周期包括诞生(通过alloc或者new方法实现)、生存(接收消息并执行操作)、交友(通过复合以及方法传递参数)
以及最终死去(被释放掉)。
当生命周期结束时,它们的原材料(内存)将被回收以供新的对象使用。
引用计数
现在,对象何时诞生我们已经很清楚了,而且也讨论了如何使用对象,但是怎么知道对象生命周期结束了呢?Cocoa采用了一种叫做引用计数(reference counting)
的技术,有也叫做保留计数(retain counting)
。
每个对象都有一个关联的整数,当某段代码需求访问一个对象时候,计数器就+1,
反之当这段代码结束对象访问时,计数器-1,
当计数器为0的时候系统就回收该对象(