NSAutoreleasePool释放时为什么经常用drain,不用release求答案
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/08 18:13:28
NSAutoreleasePool释放时为什么经常用drain,不用release求答案
NSAutoreleasePool释放时为什么经常用drain,不用release求答案
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.
因此,重点是
NSAutoreleasePool释放时为什么经常用drain,不用release求答案
氢气燃烧时释放多少能量?
种子萌发时释放能量产生什么
ATP转化成ADP时释放什么
干电池放电时释放出什么?
冻土融化时释放什么气体
可燃物爆炸,是不是将物质本身燃烧时能释放出的能量 瞬间释放出来
怎样去掉甲醇燃烧时释放的味道
高温硫化硅橡胶时释放的气体有毒吗
煤气和沼气燃烧时哪个释放的温度高?
原子弹爆炸时释放的能量可以达到多少度
煤燃烧时释放出的温度能将铝融化吗
水遇到生石灰时释放多少度高温
沼气燃烧时也释放各种气体物质,是不是清洁能源
为什么晶体凝固时,释放热量,却温度不变?
动植物呼吸时,消耗体内的()把()释放到()中
太阳能发生聚变时释放的是哪种能量
沼气燃烧时也释放各种气体物质,是不是清洁能源