私は、システムのメモリが不足していることを検出し、Application.Restart()を使用してシステムを再起動する方法を検討しています。メモリ不足例外の防止または予測
フォームに添付されたWebブラウザコントロールを破棄しても、メモリ使用量が減少せず、読んだところではIEの問題であり、私たちはその慈悲に満ちているため、WebBorwserコントロールが原因です。 (IEを開いても同じWebサイトを実行しても、メモリは増えますが、タブを閉じると適切に減少します...)
私はWebkitに移行したくないと思っています。 GeckoFXはJavaScriptやjqueryのサポートをサポートしていないので、組み込みのブラウザコントロールがインターフェイスデザインの一部であるため、外部のブラウザインスタンスを使用することはできません。
これで、使用可能なメモリを総メモリに対して動的にチェックし、GCが到達できないリソースを適切に処分するために状況が悪化した場合に再起動を実行する方法を作成します。 。
私はこれを行うことができ、私がやめたところからオートメーションを再開し、このデーモンを繰り返し実行すると信じています。
誰でもメモリチェックをコード化する方法を理解できますか?それは十分に簡単でなければなりません。私はこのスレッドを見つけましたが、エラーに陥ることなく実装するのに苦労しています...おそらく別のアプローチが良いでしょうか? How do you get total amount of RAM the computer has?
ありがとうございました!これが役立つことを願っています
OOMは、物理RAMではなくアドレス空間です。 – CodesInChaos
「選択が壊れています」というメッセージが表示されます –
実際にプロファイラを使用しているのか、アームチェアメモリ分析を行っていますか? –