Objective-C 基础教程第九章,内存管理

目录

Object-C 基础教程第九章,内存管理

前言:

最近事情比较多,很久没有来更新文章了。

刚好最近又空闲出来点时间,赶紧继续学习OC并且做笔记,这次要学习的是OC的内存管理。

对象生命周期

正如现实世界中的鸟类和蜜蜂一样,程序中你的对象也有生命周期。

对象的生命周期包括诞生(通过alloc或者new方法实现)、生存(接收消息并执行操作)、交友(通过复合以及方法传递参数)

以及最终死去(被释放掉)。

当生命周期结束时,它们的原材料(内存)将被回收以供新的对象使用。

引用计数

现在,对象何时诞生我们已经很清楚了,而且也讨论了如何使用对象,但是怎么知道对象生命周期结束了呢?Cocoa采用了一种叫做引用计数(reference counting)的技术,有也叫做保留计数(retain counting)

每个对象都有一个关联的整数,当某段代码需求访问一个对象时候,计数器就+1,

反之当这段代码结束对象访问时,计数器-1,

当计数器为0的时候系统就回收该对象(