我正在制作一款 iPhone 游戏。我想释放所有已分配或保留的对象。在里面dealloc
我正在释放所有此类对象,但后来我意识到有时我最终会在对象尚未分配时释放它们。所以我想我需要检查一下是否retainCount
在我释放它之前是否大于零。
我的问题是:
我是否只是检查retainCount
大于零然后释放它?
if([bg retainCount]!=0)
{
[bg release];
}
or
我是否应该释放它多次retainCount
while([bg retainCount]!=0)
{
[bg release];
}
感谢您的帮助!
不要使用-retainCount。
对象的绝对保留计数是没有意义的。
你应该打电话release
与您导致对象被保留的次数完全相同。不能少(除非你喜欢泄漏),当然也不能多(除非你喜欢崩溃)。
See the 内存管理指南 https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmRules.html%23//apple_ref/doc/uid/20000994-BAJHFBGH了解完整详情。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)