我正在使用TouchJson来解析来自facebooks graph api的json数据。我收到了一些内存泄漏,我真的不明白为什么......
在我找到泄漏的努力中,我已经删除了其他所有内容,因此下面的代码就是我留下的内容。泄漏是每个循环的一个NSCFString,我知道它来自myItem.date的分配,但我不明白为什么?
我正在使用最新版本的TouchJson
NSError *error;
NSDictionary *jsonDictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:data error:&error];
NSArray *jsonArray = [jsonDictionary objectForKey:@"data"];
for (NSDictionary *jsonEntry in jsonArray) {
NSDictionary *fromDictionary = [jsonEntry objectForKey:@"from"];
NSString *userId = [fromDictionary objectForKey:@"id"];
// Continue if it is a post from Atlas
if (userId != nil && [userId isEqualToString:@"10465958627"]){
MyItem *myItem = [[MyItem alloc] init];
// This uncommented causes the leak, why?
myItem.date = [jsonEntry objectForKey:@"created_time"];
[myItem release];
}
}
感谢您的帮助!
编辑:我忘了提到MyItem只是一个具有类似属性的对象
@property (nonatomic, copy) NSString *date;