2

私たちのチームはプロジェクトに取り組んでいます。その目的は、画面にデータをレンダリングするレンダラーを作成することです。以下の仕様の HP Z600 ステーションで作業していました。

現在、次の仕様の新しい HP Z620 ステーションに移動しました。 RAM: 12GB 12 コア プロセッサー: Intel(R) Xeon(R) CPU E5-1650 0 @ 3.20 GHz 3.20GHz OS: Windows 7 sp1 64 ビット NVIDIA Quadro 4000

新しいステーションで C# および c++\cli コードを 32 ビット エミュレーションで実行しようとしましたが、メモリ不足の例外\COMException が非常に速く発生しています。アプリケーションはわずか 450MB です。例外は常に同じアクションでスローされます (ただし、コード内の異なる場所で):

new WritableBitmap(幅、高さ、96、96、PixelFormats.Bgra32、null)

追加情報:

古いステーション(Z600)では問題なく動作します。Windows 7 sp1 64Bit を搭載した Z600 で実行しようとしましたが、問題なく動作します。私が見つけたもう 1 つの問題は、レンダラーを使用して画面に ".tif" ファイルをレンダリングする例でした。Z600 (Windows 7 32 ビットまたは 64 ビット) を使用して、レンダリング後のアプリケーションのメモリは 300MB です (アプリケーションの .exe ファイルを実行するか、Visual Studio のデバッガーを介して実行します)、しかし、Z620 (Windows 7 64 ビット) に移動したとき、.exe ファイルからアプリケーションを実行すると、実際には 300MB しかかかりませんが、Visual Studio を介して実行すると ( VS 2010 と VS 2012 を試してみました) メモリ消費量は最大 1000MB になりました (Visual Studio ホスティング プロセスのチェックを外しても効果はありませんでした)。

これがなぜ起こるのかを調べようとしましたが、2日間検索しても答えが見つかりませんでした. Z620 でこの問題または同様の問題が発生しましたか? 誰かが答えてくれることを願っています:)

4

1 に答える 1

0

.Net 3.5 を使用している場合、WritableBitmap に既知のバグがあります。

http://social.msdn.microsoft.com/Forums/vstudio/en-US/5d88cdf1-e992-4ad4-8f56-b5dbf92dcf1c/possible-writeablebitmap-memory-leak

于 2013-07-16T08:29:24.990 に答える