2012-09-12 7 views

答えて

17

GC生成は、オブジェクトが存続するガベージコレクションの数に関係します。

すべてのオブジェクトは、世代0から開始されます。ガベージコレクションが発生し、世代Nオブジェクトを収集できない場合、世代N + 1に移動されます。

世代はガベージコレクションのパフォーマンスを最適化するために使用されます。

  1. サイズにヒープ全体のごく一部です短命オブジェクトをたくさん持っている:世代0にすることを一般的に真実です。

したがって、ガベージコレクションが発生すると、ガベージコレクタは世代0を収集することから開始され、これは迅速になります。十分なメモリが解放されれば、古い世代を見る必要がなくなり、収集が迅速に行われる可能性があります。

書籍についての書籍もあります。しかし始めるには、this article、またはreference hereにいくつかの詳細があります。

+0

Driis: - 「古い世代を見る必要はありません」という意味ですか?私がここに来ているのは、十分なメモリがあれば、第N世代と第N + 1世代が見えないということです。 –

+0

+1。 @ RahulTripathiには、各世代がコレクションに含まれるときに特定のルールセットを持つ3世代(0,1,2)しかありません。 driisによって提供されるリンク(および私がこれまで見た記事)は、世代ごとに詳細に入ります。 –

+0

@RahulTripathiはい、アレクセイのコメントには世代0,1,2があります。世代2のオブジェクトは長命オブジェクトと言われています。 – driis

関連する問題