私のリークの場所を特定するのに本当に問題があります.私のクライアントはそれを介して検出し、TARGETS > RUN STATIC ANALYZER
YESに設定しました. そしてProduct
クリックでAnalyze
彼は次のようなものを見ることができました。
しかし、私の場合、上記と同じものを出力できませんでした。インターネットで検索してみましたが、うまくいきませんでした。私は何かが欠けていますか?どんな助けでも大歓迎です。
私のリークの場所を特定するのに本当に問題があります.私のクライアントはそれを介して検出し、TARGETS > RUN STATIC ANALYZER
YESに設定しました. そしてProduct
クリックでAnalyze
彼は次のようなものを見ることができました。
しかし、私の場合、上記と同じものを出力できませんでした。インターネットで検索してみましたが、うまくいきませんでした。私は何かが欠けていますか?どんな助けでも大歓迎です。
self.responseData = [[NSMutableData alloc] initWithCapacity:[data length]];
これにより、オブジェクトが作成および初期化されます。したがって、その関数はそのオブジェクトを所有しています。プロパティを適切に使用している場合、割り当てられたときに保持され (そのステートメントで)、そのフィールドが再割り当てされたときに解放される (宣言されているretain
) か、コピーされてコピーが適切に解放されます ( copy
)。これらのいずれも、保持カウントが 1 のオブジェクトを残し、それへのポインタを持たない、リークの定義です。そのオブジェクトをその関数のどこかに置くrelease
必要があります。autorelease
self.responseData = [[[NSMutableData alloc] initWithCapacity:[data length]] autorelease];
また
NSMutableData *newData = [[NSMutableData alloc] initWithCapacity:[data length]];
self.responseData = newData;
[newData release];