我有以下块给我性能工具中的问题: 特别是它说 STObject 正在泄漏。我不知道为什么?
for (NSDictionary *message in messages)
{
STObject *mySTObject = [[STObject alloc] init];
mySTObject.stID = [message valueForKey:@"id"];
[items addObject:mySTObject];
[mySTObject release]; mySTObject = nil;
}
[receivedData release]; receivedData=nil;
[conn release]; conn=nil;
更新:
items 是@property(nonatomic, retain) 这会导致保留计数为+2吗?
最佳答案
如果您向保留的 NSArray 或 NSDictionary 添加某些内容,则保留 mySTObject,这意味着在您执行此操作时它仍然存在 - 释放然后将其设置为 nil。从保留对象的存储中删除对象,您的“泄漏”就消失了。
关于iphone - 不明白为什么这里有内存泄漏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3512317/