C# で WP8 画像処理アプリを作成していますが、メモリに問題があります。
アプリから離れて何度も戻ると、メモリが不足します (例: ホーム -> 戻る -> ホーム -> 戻る...)。
この問題をデバッグする方法を知りたいですか?できる限りメモリをクリーンアップしようとしています (Dispose/null への設定を使用) が、機能していません。
どうすればデバッグできますか? メモリが何によってどのように使用されているかを調べる方法はありますか?
C# で WP8 画像処理アプリを作成していますが、メモリに問題があります。
アプリから離れて何度も戻ると、メモリが不足します (例: ホーム -> 戻る -> ホーム -> 戻る...)。
この問題をデバッグする方法を知りたいですか?できる限りメモリをクリーンアップしようとしています (Dispose/null への設定を使用) が、機能していません。
どうすればデバッグできますか? メモリが何によってどのように使用されているかを調べる方法はありますか?
この質問からの答えを確認してください:
Windows Phone SDKには、メモリ消費とその他の両方のプロファイラーが付属しており、SDKのインストール後にVisualStudioで使用できます。
または、MSDNの記事への直接リンクは次のとおりです。
http://msdn.microsoft.com/en-us/library/hh202934%28v=vs.92%29.aspx
アップデート:
その質問はWP7を対象としていたようですので、当てはまる場合と当てはまらない場合があります。しかし、WP8とWP7の両方に当てはまる記事を見つけました。
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202934(v=vs.105).aspx
lhan16の答えは的を射ています。
行う必要があるのは、メモリ プロファイリングを使用して定期的にどのメモリ ヒープをチェックし、割り当てるべきではないときに何が割り当てられているかを確認することです。少なくとも、メモリ リークの原因となっている可能性のある人物を絞り込むのに役立ちます。あまりにも多くの Byte[] を保存する簡単な例と、メモリ プロファイリング ツール @ http://www.developer.nokia.com/Community/Wiki/Techniques_for_memory_analysis_of_Windows_Phone_apps#Profilingを使用してそれらを見つける方法を含む記事を書きました。