2011-11-26 4 views
1
- (void)addChild:(MyTreeNode *)newChild { 
    newChild.parent = self; 
    [self checkForSelectedNode:newChild]; 
    [self.children addObject:newChild]; 

} 

楽器とデバッグ時 [self.children addObject:newChild];どのようにこのメモリリークを修正するには?このコード小児における

100%リークを示しているクラスused.Theラインの特性です。それはdeallocメソッドで適切に解放されます。それがリークを示しています。このリークを削除するには?

+2

あなたはARCを使用していますか? 'newChild.parent'は弱いと宣言されていますか?強く宣言されている場合は、参照サイクルがあります。 –

+0

いいえ私はARC.sorryを使用していません。私はiphoneです。beginner.iは弱いと宣言されたステートメントを取得しませんでした(弱い型付けが意味されている場合は、次に強い型付けを使用しませんでした)。私はコード内で合計600kb +リークを抱えていて、最後にこの行を指しています...私は無名ですか? – sujith1406

+0

アナライザを実行し、x =警告を確認します。 – zaph

答えて

2

MyTreeNodeのヘッダーでは、親プロパティには保持しないことを指定する必要があります。他にも、保持サイクルとメモリリークがあります。

説明:1レベル下のノードは、その親と親が、それは子供の保持されて保持されます。この保持サイクルは解放されません。

+0

詳細を説明してくれてありがとう – sujith1406

関連する問題