在设备上运行仪器时,我在CFNetwork中间歇性地导致内存泄漏3.5KB,负责的帧是“HostLookup_Master::HostLookup.”。
我阅读了许多关于这个问题的问题,并分别尝试了以下方法来修复漏洞:
上述任何一项都没有用。实例化连接的类不会泄漏,因为它的实例是在下载数据时释放的。我已经证实了这一点,通过确认这个类的活对象是0使用仪器。
任何关于解决这一漏洞的建议都将不胜感激。
发布于 2010-06-18 10:30:23
3.5kb内存泄漏听起来很熟悉,在处理和线程时也是如此
@implementation MyClass
+ (void)login
{
//MyClass *this = [[MyClass alloc] init]; // MEMORY LEAK
MyClass *this = [[[MyClass alloc] init] autorelease];
[NSThread detachNewThreadSelector:@selector(anotherThread)
toTarget:this
withObject:nil];
}
- (void)anotherThread {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[self doStuff];
//[self release]; // MEMORY LEAK
[pool release];
}
@end每个登录名都创建了3.5kb漏洞。使用自动发布解决了的问题。
发布于 2010-06-25 15:26:14
苹果似乎意识到了与CFNetwork使用相关的3.5k漏洞,而且可能是已经被报告为一个bug了。
https://stackoverflow.com/questions/2439137
复制相似问题