私のアプリケーションは、高速カメラから入ってくる約 300 MB の画像をバッファリングする必要があります。最も古い画像が破棄され、新しい画像が追加されるキューがあります。
このサイクルの性質により、多くのオブジェクトが作成され、多くのオブジェクトが破棄されます。そのすべてを処理するために ConcurrentQueues を使用しています。
アプリケーションのパフォーマンスは優れていますが、12 GB のシステム メモリが使用されるとパフォーマンスが低下し、ガベージ コレクションが作動してメモリ負荷が約 300 MB に戻ったように見えます。
その上でANTSメモリプロファイラーを実行しましたが、リークはないようです。
ここでガベージコレクションを自分で呼び出すことはできますか?
また、バイト配列を再利用して画像を保存するという考えもありますが、それはかなりの書き直しであり、残りが失敗した場合にのみそのルートに従います...
何か案は?