假设我正在开发一款游戏。我数千次运行以下类方法:
NSBundle *bundle=[NSBundle mainBundle];
我没有创建一个自动释放池,并且一直释放调用上述类方法的对象。我创建了一个对象,它调用了上面的类方法,我释放了它,上千次。
3个问题:
- 内存泄漏了吗?
- 如果我跑:
NSAutoReleasePool *pool=[[NSAutoReleasePool alloc] init]; [池排水];
然后它会有效地释放在类方法中创建的所有那些 NSBundles 吗?
- 如果我写道:
池=无;
而不是写:
[池排水];
能达到同样的效果吗?这是好习惯吗?
这三个问题是相互关联的,我将加强澄清它们的问题:)