2013-07-04 66 views
1

當我嘗試解析JSON時,我在很多情況下都面臨內存泄漏。想到它告訴SBJsonParser,我知道這不會是一個原因。 。JSON解析時的內存泄漏,

- (id)JSONValue { 
    SBJsonParser *jsonParser = [SBJsonParser new]; 
    id repr = [jsonParser objectWithString:self]; // 100.0 % Memory Leak 
    if (!repr) 
     NSLog(@"-JSONValue failed. Error is: %@", jsonParser.error); 
    [jsonParser release]; 
    return repr; 
} 

而且內存泄漏在

"id result=[JSON valueForKeyPath:@"result"]; " 
// 100.0% memory leak 
id repr = [jsonParser objectWithString:self]; // 80.0% Memory Leak 

發生我需要做什麼來解決這個問題是什麼> :(謝謝

+1

是你的代碼是否在ARC下? – HepaKKes

+0

最有可能的泄漏(如果有泄漏)是由於你沒有正確釋放解析器本身或解析器返回的對象。 –

回答

0

你應該使用這樣的:

​​
+2

這個答案是正確的。在我爲客戶創建的一個項目中,SBJsonParser導致了一些非常奇怪並且很難追蹤內存泄漏的原因。使用iOS提供的JSON解析邏輯修復了泄漏問題。使用NSJSONSerialization。 – MoDJ

+0

+1其固定內存泄漏在那個地方。謝謝:) – Femina

+0

但是,仍然我得到很多:(id repr = [jsonParser objectWithString:self]; – Femina