NSAutoreleasePool释放时为什么经常用drain,不用release求答案
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/17 18:16:04
NSAutoreleasePool释放时为什么经常用drain,不用release求答案
NSAutoReleasePool * pool = [NSAutoReleasePool alloc] init];
//do something之后,
[pool drain] 和 [pool release] 的区别:release
,在引用计数环境下,由于NSAutoReleasePool是一个不可以被retain的类型,所以release会直接dealloc pool对象.当pool被dealloc的时候,pool向所有在pool中的对象发出一个release的消息,如果一个对象在这个pool中autorelease了多次,pool对这个对象的每一次autorelease都会release.在GC环境下release是一个no-op操作(代表没有操作,是一个占据进行很少的空间但是指出没有操作的计算机指令).
drain
,在引用计数环境下,它的行为和release是一样的.在GC的环境下,这个方法调用objc_collect_if_needed出发GC.
因此,重点是
//do something之后,
[pool drain] 和 [pool release] 的区别:release
,在引用计数环境下,由于NSAutoReleasePool是一个不可以被retain的类型,所以release会直接dealloc pool对象.当pool被dealloc的时候,pool向所有在pool中的对象发出一个release的消息,如果一个对象在这个pool中autorelease了多次,pool对这个对象的每一次autorelease都会release.在GC环境下release是一个no-op操作(代表没有操作,是一个占据进行很少的空间但是指出没有操作的计算机指令).
drain
,在引用计数环境下,它的行为和release是一样的.在GC的环境下,这个方法调用objc_collect_if_needed出发GC.
因此,重点是
NSAutoreleasePool释放时为什么经常用drain,不用release求答案
为什么在命令行打release IP 不能释放IP?操作是运行 CMD ipconfig release.
释放 RELEASE怎么样
用O18分别标记CO2和H2O,证明光合作用释放的氧气全部来自于水,为什么不用标记CO2?
Release
Release the baby!求翻译!
求release my soul伴奏
求不定积分时用三角代换时为什么不用考虑正负也不用加上绝对值符号.例如..
求circle the drain by katy perry歌词!
跪求circle the drain的歌词翻译
求release my soul副歌铃声
求release my soul 的歌词