マイナー ガベージ コレクションは、古い世代をスキャンしないため、非常に効果的であると主張されています。
マイナー ガベージ コレクションは、これらをスキャンせずに、古いオブジェクトまたは永続的なストレージから若いオブジェクトへの参照がないことをどのように検出しますか?
マイナー ガベージ コレクションは、古い世代をスキャンしないため、非常に効果的であると主張されています。
マイナー ガベージ コレクションは、これらをスキャンせずに、古いオブジェクトまたは永続的なストレージから若いオブジェクトへの参照がないことをどのように検出しますか?
「Understanding GC pauses in JVM (HotSpot のマイナー GC )」を参照してください。この記事では、HotSpot JVM における若い GC の仕組みと書き込みバリアについてかなり詳しく説明します。
つまり、古い世代はスキップされません。old から new へのすべての参照は、若い空間 GC のルートと見なされます (new から old へのすべての参照が古い空間 GC のルートと見なされるのと同じように)。トリックは、書き込みバリアにより、古いスペースの非常に小さな部分のみをスキャンして、若いスペースへのすべての参照を見つけることができるということです。