2011-08-24 58 views
1

我正在完成我的應用程序,現在是時候修復所有泄漏,所以我使用儀器。發佈的NSString泄漏

下面的代碼和泄漏...

- (void)connectionDidFinishLoading:(NSURLConnection *)connection { 
    [connection release]; 

    NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; 
    [responseData release]; 
    //NSString *responseString2 = [NSString stringWithFormat:@"%s%@%s", "[", responseString, "]"]; 
    // Pour ajouter les [] si y'en a pas autour de tout le contenu JSON, et on doit utiliser responseString2 au lieu de responseString à la ligne ci-dessous 
    NSArray *tableau = [responseString JSONValue]; 
    [responseString release]; 
    NSDictionary *dico = [tableau objectAtIndex:0]; 

這是responseString泄漏但我釋放它把這個數值數組...我如何刪除泄漏後?我不明白我的錯誤。

回答

5

泄漏向您顯示泄漏的分配位置,而不是實際泄漏的位置;不是導致問題的額外retain

使用Allocations工具來跟蹤對象上的所有保留/釋放調用,並找到額外的保留。那會是你的泄漏。


我怎麼辦Heapshot based analysis應該可以幫助您解釋(因爲它可以用來追蹤問題正是這樣,太)。

+0

好的。我可以有一個說明如何運行,它使30分鐘,我嘗試使用它,但... x( 感謝您的問題;-) – clement