7

Xcodeでアプリを開発している間、メモリリークが発生しています。拡張詳細ビューでそれらをチェックすると、実装に関連しないさまざまなメソッドが表示されています。どのオブジェクトがリークしていて、どこでメモリリークしているのかを正確に特定する方法。

ARCが有効になっている場合、メモリリークに注意する必要がありますか?

4

2 に答える 2

11

はい、ARCを使用しても、メモリリークが発生します。ARCはガベージコレクターではありません。コンパイル時に挿入し、キー位置に保持、解放、自動解放するだけです。したがって、開発者には役立ちますが、メモリリークがまだ存在することに注意する必要があります(循環参照など)。静的アナライザーを使用して開始し、表示される問題を修正できます。次に、Instrumentsに移動して、Leaksを選択できます

于 2012-05-08T06:19:31.157 に答える
11

メモリリークが発生する可能性がある場合でも、ARCコンパイル時にリリースと自動リリースを挿入するだけです。

1.Build and analyze XCodeを使用してリークをチェックする必要があり、shift+command+bそれらの問題をクリアする必要があります。

2.その後、プロファイルオプションを使用して機器の使用を開始できますcommand+i。これにより、リークが発生する可能性のある場所が示されます。

このリンクはあなたにも役立ちますhttp://soulwithmobiletechnology.blogspot.in/2011/04/how-to-check-memory-leaks-in-xcode-4.html

編集:うまくいけばそれを明確にするためにいくつかのスクリーンショットを追加しました。

選択後のプロファイリング中にleakscall treeオプションを選択してチェックボックスをオンhide system librariesinvert call treeshow obj-c onlyます。下の画像を参照してください。

下のシンボル名をダブルクリックすると、リークしている行が表示されます。 ここに画像の説明を入力してください

あなたはこのようなものを手に入れるでしょう。

ここに画像の説明を入力してください

于 2012-05-08T06:23:51.963 に答える