Java12新機能 - 割り込みG1ミックスGC

G1は、それが大量のメモリを持つマルチプロセッサマシンのために設計され、ガベージコレクタです。理由は、そのパフォーマンスを向上させる効率の、G1ガベージコレクタは、最終的にCMSのガベージコレクタを交換します。

ガベージコレクタの主な目的の一つは、JVMは、一時停止し、ユーザが設定した期待を満たすように設計されています。

高レベルの解析エンジンは、収集中に処理されるワークロードを選択し、この選択プロセスの結果は、GC回収(収集セット(CSET))と呼ばれる領域の集合である使用G1の。一度収集収集し、GC回復するために戻ってGCを決定し、仕上げ作業はすでにこのプロセスはなしで始まった
停止した後に停止する、それはG1コレクタであるに設定されたすべての領域のコレクション内のすべてのアクティブなオブジェクトを完了する必要があります。しかし、コレクタが選択した場合大規模なコレクションのGCバック、今回STW長い時間は、目標休止時間を超えてしまいます。

この状況は、時間の混合のコレクションに、より明白です。スタート機構のこの機能は、必須の(必須または必須)及び(エンド必須の部分を分割し、比較的大規模なコレクションセットは、Java12 GCコレクション(収集セットミキシング)が返されたときに選択された場合、オプションの二つの部分、もし良好指定休止時間の目標を達成するために、abortableを停止せずにコレクションを変更する混合任意の残りの部分)を処理する時間があるだろう。

ここで基本的な処理部は、セクションGCのG1のガベージコレクタが含ま集めバック増分処理することはできません(例:若い世代)だけでなく、処理効率を向上させるために、古い年含めることができます。

GCが背面部分に必須および任意の分割を収集する場合、ガベージコレクションプロセスは、優先セクションを必要としました。一方、G1のGC回復に収集処理復帰時、ネイティブメモリの使用量が増加することができるが、変更をわずかなCPUオーバーヘッドを生成するが、1%未満であろうバックいくつかの追加のデータを任意収集部GCを維持する必要性、上記使用することのみ必要に応じてハイブリッドセットを回収GC GCを含む回収部に適用されます。

必要な画分の終了がG1のガベージコレクタに回収プールした後に時間があれば、その後、任意の部分を集めるようになりました。しかしながら、粗粒処理は、処理は、ゾーンの選択部分のサブセットを処理することができ、残りの時間の任意の部分の粒子サイズに依存します。オプションの集電部の完了後、G1ガベージコレクタは、残り時間の収集を停止するかどうかを決定することができます。プロセスの必要な部分であれば処理の後、残り時間の不足、予想時間、G1ガベージコレクタに近い総支出時間も予想される休止時間を満たすために目標を達成するために、回復の任意の部分を停止することができます。

おすすめ

転載: www.cnblogs.com/androidsuperman/p/11742876.html