1

多数の画像を処理するアプリケーションを用意します。メモリ フットプリントは、予想されるサイズの約 2 倍です。

以下に示すようにコードを整理しました。_source は、スコープ内に留まるインスタンス変数です。

int width = 924;
int height = 1116;
int length = width * height;
UInt32[] data = new UInt32[length];

_source = BitmapSource.Create( width, height, 96, 96, 
                               PixelFormats.Pbgra32, 
                               null, data, width * sizeof(UInt32));
_source.Freeze();

これを ANTS メモリ プロファイラーを介してフィードすると、BitmapSafeMIHandle が割り当てられ、メモリ使用量が実行されるたびにビットマップのサイズの約 2 倍になることがわかります。

私は何をしていないのですか?私はこれと一緒に暮らす必要がありますか?すべての情報をいただければ幸いです。

乾杯、ナイジェル

4

0 に答える 0