C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.15733 の関連記事表示

<< 0 >>
■15733  画像のリソースを正しく開放するには?
□投稿者/ まぐねしうむ -(2008/03/19(Wed) 17:59:15)

    分類:[C#] 

    いつもお世話になっております。

    例えばピクチャーボックスに画像を複数回張ったり消したりする処理で
    下記の2パターンを試したところ「1」のケースは期待通りにすぐ開放されましたが
    「2」のケースは期待した動きとは異なり、すぐにはリソースが開放されませんでした。
    (開放されているかどうかはタスクマネージャのメモリ使用量で
     確認しています。)

    お手数ですが「1」のケースの様にすぐにリソースを開放する方法が無いか
    教えてください。

    1.画像を外部から読み込む

    if (pictureBox1.Image != null)
    {
    pictureBox1.Image.Dispose();
    pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\Test.bmp");
    }
    else
    {
    pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\Test.bmp");
    }

    2.内部のリソースファイルから読み込む

    if (pictureBox1.Image != null)
    {
    pictureBox1.Image.Dispose();
    pictureBox1.Image = Properties.Resources.TestJpg;
    }
    else
    {
    pictureBox1.Image = Properties.Resources.TestJpg;
    }

    以上よろしくお願いします。
親記事 /過去ログ32より / 関連記事表示
削除チェック/

■15735  Re[1]: 画像のリソースを正しく開放するには?
□投稿者/ Tom Yama -(2008/03/19(Wed) 18:13:13)
    No15733 (まぐねしうむ さん) に返信
    > いつもお世話になっております。
    >
    > 例えばピクチャーボックスに画像を複数回張ったり消したりする処理で
    > 下記の2パターンを試したところ「1」のケースは期待通りにすぐ開放されましたが
    > 「2」のケースは期待した動きとは異なり、すぐにはリソースが開放されませんでした。
    > (開放されているかどうかはタスクマネージャのメモリ使用量で
    >  確認しています。)
    どっちのケースも、ちゃんと「解放」されていますよ。
    (マネージ、アンマネージどちらにせよ)リソースの「解放」と、タスクマネージャのメモリ使用量の増減との間には、
    何の関連もありません。
記事No.15733 のレス /過去ログ32より / 関連記事表示
削除チェック/

■15739  Re[2]: 画像のリソースを正しく開放するには?
□投稿者/ やじゅ -(2008/03/19(Wed) 18:38:16)
    No15735 (Tom Yama さん) に返信
    >
    >開放されているかどうかはタスクマネージャのメモリ使用量で確認しています。
    >

    それが駄目です。

    メモリ使用量は、実際に使用されているメモリ量とイコールではありません。
    NETにおいて実際に使用しているメモリのサイズを確認するには、GCクラス
    のGetTotalMemoryメソッドを使用して計測する必要があります。
    http://www.atmarkit.co.jp/fdotnet/vblab/appqa_01/appqa_01_01.html
記事No.15733 のレス /過去ログ32より / 関連記事表示
削除チェック/

■15742  Re[3]: 画像のリソースを正しく開放するには?
□投稿者/ まぐねしうむ -(2008/03/19(Wed) 19:56:47)
    Tom Yamaさん やじゅさん ご返信有難うございます。

    今回のケースですと両方とも問題なく開放できるとの事了解しました。
    また、今後はメモリ使用量はご提示して頂いた方法で確認したいと思います。

    有難うございました。
記事No.15733 のレス /過去ログ32より / 関連記事表示
削除チェック/

■15743  Re[4]: 画像のリソースを正しく開放するには?
□投稿者/ まぐねしうむ -(2008/03/19(Wed) 19:57:07)
    すいません解決済みにするのを忘れてました。
記事No.15733 のレス / END /過去ログ32より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -