2

多くの大きなオブジェクトへの参照を削除したアプリケーションがある場合、GC で奇妙なことがわかりました。それでも、私の場合は約 300MB の大量の RAM を消費します。呼び出してもこのメモリは消去されませんGC.Collect()

次に、数秒でランダムに10回呼び出してみましたが、結果:200MBのRAMが解放され、アプリケーションは300MBのプライベートRAMではなく100MBしか消費しませんでした(仮想ではなく、物理/常駐RAM)

どうしてこれなの?手動で呼び出さなくても、GC でこのメモリを自動的にクリーンアップするにはどうすればよいですか?

4

3 に答える 3

0

今日は SO に関する GC の質問がたくさんあります。

それだけの時間が経過した後、それをきれいにするつもりだったのかもしれません。プログラムがメモリを使い果たし、その余分な呼び出しを行わずに終了した場合は、そのままにしておきます。それ以外の場合は、おそらく不要です。

于 2013-04-18T18:38:47.570 に答える