私は、メモリ リークのあるプロジェクト (MVP アーキテクチャ上に構築された) で作業しています。アプリケーションは、グリッドに表示されるレコードのリストで 1GB のメモリを使用しています。
1. DB からデータをロードするページを開く前 (メモリ使用量 = 400 MB) 2. ページを閉じるとき
ページを閉じるとき、メモリ使用量は同じまま (約 1 GB) ですが、少なくとも何かが減少するはずです (理想的には 400 MB に戻る必要がありますが、GC は常に制御できるとは限りません... できますか?)。私はこのようにプロセスのメモリ使用量を制御しようとしました:
Process.GetCurrentProcess().MaxWorkingSet = new IntPtr(1000000);
そして、私は別のものを使用するつもりです:
SetProcessWorkingSetSize(IntPtr handle, IntPtr min, IntPtr max)
しかし、さらにコードを最適化しようとしましたが、その方法がわかりません。私はすぐにこの投稿を多くのコードで編集します.-1しないでください...それ