1

私はios開発が初めてです。私は今、非常に深刻な問題を抱えています。私のアプリケーションはほぼ完成していますが、メモリの警告が原因で頻繁にクラッシュします。既存のView Controllerの上に新しいView Controllerを表示するたびに、メモリ警告が表示されます。カスタム ビュー クラスは、新しいビュー コントローラーが読み込まれると、そのビューに UIWebView を追加します。

計測器を使用してメモリ割り当てをデバッグしようとしましたが、メモリがどのように割り当てられているかわかりません。ヒープショット分析のスクリーンショットは、下の図のように多数の非オブジェクトを示しています。スタック トレースを見ると、Web ビューの追加を示しています。 ここに画像の説明を入力

デバッグ方法を教えてください。これらの非オブジェクトは何を指しており、どのように対処すればよいでしょうか。あなたの提案と事前の助けに感謝します。

4

1 に答える 1

2

オブジェクト以外の割り当ては、ほとんどの場合、オブジェクト内のバッキング ストアとして使用されます。つまり、NSMutableArray は、多くの場合、instrument の非オブジェクト割り当てに現れる複数の malloc() バッファによってサポートされます。

非オブジェクトがInstruments で割り当てとして表示される唯一のものでない限り、それらは無視できます。

代わりに、特定のタイプの割り当てに注目してください。その Heapshot 反復で他に何かありますか? 右側のバックトレースに CardScrollView があるようです。彼らは正しく去っていますか?

于 2012-10-05T21:48:07.773 に答える