黑马程序员技术交流社区

标题: 对象是什么时候被release的? [打印本页]

作者: hezerongrocky    时间: 2016-2-24 02:05
标题: 对象是什么时候被release的?
引用计数为0时。
autorelease实际上只是把对release的调用延迟了,对于每一个Autorelease,系统只是把该Object放入了当前的 Autorelease pool中,当该pool被释放时,该pool中的所有Object会被调用Release。对于每一个Runloop,系统会 隐式创建一个Autorelease pool,这样所有的release pool会构成一个象CallStack一样的一个栈式结构,在每一个 Runloop结束时,当前栈顶的Autorelease pool会被销毁,这样这个pool里的每个Object(就是autorelease的对 象)会被release。那什么是一个Runloop呢?一个UI事件,Timer call, delegate call, 都会是一个新的 Runloop



作者: songzengyu    时间: 2016-2-24 09:07
了解了。。。。
作者: Kuhoku    时间: 2016-2-24 15:10
簡單的說

當計數器為 0 的時候就被釋放掉了

(入學面試考題)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2