2009-02-25 13 views
4

実際のリークがどこで起こっているのか、Instrumentsを使用しているアプリケーションでどこにないのかを理解するのは難しいです。私はautoreleasedされ、後で保持されていないオブジェクトを持っています。それはInstruments経由でリークとして表示されています。また、私が自分で書いたコードを指摘しない漏れとしてリストされているオブジェクトもたくさんあります。おそらく、本当のリークの一つがAppleライブラリ内のものを漏らしているドミノ効果だと思うかもしれませんが、私はそれが当てはまるとは思っていません。本当のリークがどこで起こっているのかを区別する最良の方法は何ですか?自動リリースされたオブジェクトに漏れを示すインストゥルメントはありますか?

答えて

3

私の経験では、インストゥルメントは自動リリースされたアイテムに誤検出をもたらしません。 (これらはまだ自動解放プールによって参照されるため、魔法の違いはありません)。

メモリリークが発生すると、実際にはドミノの影響があり、1つの原因で多くのカスケードリークが発生する可能性があります。機器内では、各リークには時間ベースのアイデンティティがありますので、最初のリークから始めることをお勧めします。

関連する問題