none
VB.NET 2008 Express メモリリークについて RRS feed

  • 質問

  • パフォーマンスモニタより、メモリリークの検出を行っています。

    メモリリーク箇所の特定方法として、有効な方法はありますでしょうか。

    現象としては、24分周期でヒープのメモリ使用量が上がり、その後、

    もとのメモリーサイズまで戻らず、長時間放置すると、ヒープメモリの

    使用量が上がっていきます。

    スレッドやタイマーが起動しており、どのスレッドが要因となっているのか

    特定ができません。

    コード上でスレッド生成している箇所は、生成をしないようにしています。

    回答の方を宜しく御願いします。

    • 移動 星 睦美 2013年11月29日 0:21 .Net Framework 全般 から
    2013年11月28日 13:51

すべての返信

  • スレッドやタイマーが起動しており、どのスレッドが要因となっているのか

    特定ができません。

    一つずつスレッド・タイマーを無効化して実行してみて、
    どのスレッドを無効化した時に現象が出なくなるかを判定してみるのはどうでしょうか。
    ※ソース及びbuild可能な環境がある前提で話しています。
    2013年11月28日 22:57
  • # モデレータさん、このスレッドはExpressフォーラムへ移動してください。

    一般的にはプロファイラを使用してメモリの使用状況を確認し、未解放のオブジェクトを特定します。Visual Studioにも付属しますが無償のExpressにはなく、上位のEditionが必要です。それとは別にフリーのプロファイラもありますが、そちらは使ったことがないのでよくわかりません。

    スレッドの生成はあまり関係ないでしょう。それよりも使用しなくなったオブジェクトが意図しない形でどこかのリストに収められたままになっていて解放されずに残っていた、なんてことの方が多いです。

    2013年11月28日 23:34
  • フォーラム オペレーターの星 睦美です。

    佐祐理 さん、返信ありがとうございます。

    BellyKen さん、こちらのスレッドは私のほうでVisual Studio Express Edition - 全般 フォーラムに移動させていただきますね。
    フォーラムで役立つ回答がありましたら、投稿者からの[回答としてマーク] をお願いします。


    フォーラム オペレーター 星 睦美 - MSDN Community Support

    2013年11月29日 0:20
  • ># モデレータさん、このスレッドはExpressフォーラムへ移動してください。

    スレッドの移動はオペレーターさんしかできないのです。内容的に私もExpressフォーラムの方が良いと思いますので、オペレーターさんにお願いしておきますね。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    2013年11月29日 0:20
    モデレータ
  • モデレーターさんの中にもオペレーターさんは別なんですね、知りませんでした。
    2013年11月29日 1:30
  • パフォーマンスモニタより、メモリリークの検出を行っています。

    メモリリーク箇所の特定方法として、有効な方法はありますでしょうか。

    現象としては、24分周期でヒープのメモリ使用量が上がり、その後、

    もとのメモリーサイズまで戻らず、長時間放置すると、ヒープメモリの

    使用量が上がっていきます。

    ・メモリ使用量とは具体的に何で(どの指標で)確認していて

    ・ヒープのメモリ量が上がるというのがどの程度からどの程度で

    ・長時間とはどの程度の時間でどの程度使用量が上がった状態になるのか

    辺りをもう少し具体的に示す方がいいと思います。

    2013年11月29日 2:05
  • >モデレーターさんの中にもオペレーターさんは別なんですね、知りませんでした。

    あ~、どちらも表記は「モデレータ」ですので、私の書き方がわかりにくかったですね。すみません。これに関して補足します。
    モデレーターもオペレーターも、できることはおそらくほとんど変わらないと思います。私でも移動のメニューは表示されていますので、移動はできると思います。試したことはありませんが、おそらくです。
    ただ、運用上の制約があるということです。ですから、モデレータの私が、佐祐理さんのご要望を無視しているわけではないということを知ってほしくて上記の書き込みをしました。オペレーターさんへのスレッド移動のお願いは、気が付いた時に私を始め、他のモデレーターさんもされています。個々のモデレータが勝手に自分の思った通りに行動してはまずいケースに関しては、一度集約して対処するために、このような運用になっているのだと思います。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    2013年11月29日 2:08
    モデレータ