sail-coder

Stay hungry,Stay foolish! --老乔。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

内存管理规则

获得途径

临时对象

拥有对象

alloc/new/copy

不再使用时释放对象

在 dealloc 方法中释放对象

任何其他方法

不需要执行任何操作

获得对象时保留,在 dealloc 方法中释放对象

内存管理规则摘要: 1、释放对象,可以释放其所占的内存,规则是:不再使用创建或者保持的对象时,就释放它们。 2、发送一条 release 消息不一定销毁对象,只有引用计数变为0 时,才销毁这个对象。系统向

对象发送一条 dealloc 消息来释放它所占的内存。 3、自动释放池在释放池本身的时候自动释放池中的对象。系统向每个对象发送一条release 消

息,对引用计数变为 0 的对象发送一条 dealloc 消息来释放它所占的内存。 4、若你的方法中不再需要一个对象时,但需要返回它,可发送一条autorelease 消息来加入自

动释放池。
5、若使用 alloc 或 copy 方法(或使用 allocWithZone:、copyWithZone:或 mutableCopy 方法

来直接创建对象,则由你负责释放它。每次retain 对象时,应该 release 或 autoreleas 它。 6、除了上以规则中提到的方法之外,不必费心地释放其他方法返回的对象,这不是你的责任。 

posted on 2014-08-29 17:15  sail-coder  阅读(107)  评论(0编辑  收藏  举报