2010-11-27 9 views
0

次のコードスニペットはfacebook.mファイルからのものであるリーク。私はそれのための解決策を見つけることができません..iPhoneのメモリは

それのための解決策を知っているなら、私を助けてください。

+0

コードをコードスニペットに入れてください。 – TheSquad

+0

解決策を見つけるために何をしましたか? NSStringsとDictionariesはどのようにして漏れていますか?あなたは私たちに仕事を与えることはほとんどありませんでした。 –

+0

これは、 'kRestApiURL stringByAppendingString:methodName ''呼び出しがリークを引き起こしていることを意味します。そのメソッドのコードは何ですか?私の推測: 'autorelease'dではないオブジェクトを返しています。 –

答えて

0

ここにはリークはありません。 stringByAppendingString:メソッドは、すでに自動解放プールに追加されている新しい文字列を返します。

0

インストゥルメントは漏れを検出します。あなたがFBRequestクラスメソッド

+ (FBRequest *)getRequestWithParams:(NSMutableDictionary *) params 
         httpMethod:(NSString *) httpMethod 
          delegate:(id<FBRequestDelegate>) delegate 
         requestURL:(NSString *) url { 
    FBRequest* request = [[[FBRequest alloc] init] autorelease]; 
    request.delegate  = [delegate retain]; 
    request.url   = [url retain];   // <----- no leak if you don't retain url 
    request.httpMethod = [httpMethod retain]; 
    request.params  = [params retain]; 
    request.connection = nil; 
    request.responseText = nil; 

    return request; 
} 

しかし、ここで保持を取り除く場合、それは消え、すべては私のためにOKのようですので、バグがここかインスツルメンツである場合、私は言うことができません。提案?