繁体   English   中英

NSAutoreleasepool泄漏-不明白为什么?

[英]NSAutoreleasepool leaking - Don't understand why?

我有以下代码:

NSNumber *num;
NSAutoreleasePool *apool = [[NSAutoreleasePool alloc] init];

for (int i=0; i<images_count; i++) {
    num = [NSNumber numberWithInt:images_count];
    [self performSelectorInBackground:@selector(loadData:) withObject:num];
}

[apool release];
[num release];

并产生以下错误:

2011-06-17 03:10:3​​0.768 CHARLIE [2456:6c03] * __NSAutoreleaseNoPool():类__NSArrayI的对象0x703d0f0在没有池的情况下自动释放-只是泄漏

我不明白为什么会泄漏,有​​人可以解释一下如何解决?

非常感谢,

插口

该代码有两个问题。

  • 自动释放池的缺乏可能是由于loadData:方法在没有自动释放池的情况下运行。

  • [num release]是胡说八道。

  • 在该循环的每个迭代中生成一个线程几乎可以保证是并行执行图像加载的性能最低的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM