私はこれを勉強しました.GCはMark and Sweepアルゴリズムを使用して未使用のメモリ参照を収集します。すべてのオブジェクトが使用されている場合のガベージコレクタの処理方法
あなたは多数のオブジェクトを作成し、変数に割り当てられている、のようなケースを想定してみましょう、あなたは
ケース1.頻繁間隔
ケース2まれ間隔でこれらの変数を使用している
これらのオブジェクトのタイプは次のとおりです。
ケース1:すべての管理対象リソースのみ。
ケース2:すべて管理されていないリソースのみ。
ケース3:管理リソースと非管理リソースの両方を混在させます。
また、デストラクタとDisposeでアンマネージリソースをクリアするのに十分なロジックがプログラムにあるとします。
しきい値に達し、それ以上の物理メモリがありません。
どのように.Net GCがこれらの2つのケース(間隔とオブジェクトの種類の両方)を処理するのですか?
言語(例:.Net、Java)に関係なく、私はこのケースを処理する方法があると信じています。
誰かが私にこのことを理解させてくれますか?
ありがとうございました。
「マネージド・リソース」、「アンマネージド・リソース」、「デストラクタ」、「廃棄」などの用語は、Javaでは意味を持ちませんので、これは「言語に関係なく」ではありません。 – Holger