使用SBJSON解析JSON字符串时内存泄漏

时间:2012-01-16 18:33:15

标签: iphone objective-c ios performance sbjson

我正在使用以下代码解析JSON并在第2行获取内存泄漏(100%)。我不知道问题是什么,有人可以帮助我吗?

    NSString *response = [request responseString];
    NSMutableDictionary *responseJSON = [response JSONValue]; (100% leak)

    NSString *tockenString = [responseJSON objectForKey:@"Token"];
    NSString *userIDString = [responseJSON objectForKey:@"ID"];

3 个答案:

答案 0 :(得分:1)

我找到了答案。转到SBJsonParser.m函数scanRestOfString并更改行

来自

        *o = [[NSMutableString alloc] initWithBytes:(char*)c length:len encoding:NSUTF8StringEncoding];

        *o = [[[NSMutableString alloc] initWithBytes:(char*)c length:len encoding:NSUTF8StringEncoding] autorelease];

SBJsonParser在scanRestOfString / NSMutableString中有类似之处。我也报告了这个错误。谢谢你们。

答案 1 :(得分:0)

删除这2个自动释放。他们过度释放物品。

答案 2 :(得分:0)

我遇到了类似的问题,但事实证明泄漏在方法链中实际上更高,但是仪器(错误地)指向了这条线。查看存储从此代码检索的结果的方法。