Java メモリ管理: ヒープ生成について
Java ヒープは、実行時にオブジェクトが割り当てられ、管理されるメモリ空間です。さらに、若者、老人、永続的な世代に分かれており、それぞれが特定の目的を果たし、相互に交流しています。
若い世代
若い世代が最初です。オブジェクトが割り当てられる場所。これはさらに次のように分割されます:
古い世代 (Tenured Generation)
存続スペース内で複数のマイナー GC を乗り越えたオブジェクトは、古い世代に昇格されます。ここには、静的データや永続エンティティを表すオブジェクトなど、存続期間の長いオブジェクトが存在します。
永続世代
他の世代とは異なり、永続世代は一部ではありません。ヒープの。クラスとメソッドに関連するメタ情報用の非ヒープ メモリを保持します。 Java 8 では、永続的な世代が削除され、メタ情報はメタスペースと呼ばれる単一のスペースに保存されるようになりました。
世代間の相互作用
世代は接続されていますガベージ コレクション サイクルを通じて:
要約すると、若い世代には存続期間の短いオブジェクトが含まれ、古い世代には存続期間の長いオブジェクトが含まれ、永続世代 (またはJava 8 のメタスペース) は、クラスとメソッドに関連する非ヒープ データを格納します。ガベージ コレクション サイクルでは、オブジェクトが古くなって不要になると、これらの世代を経てオブジェクトが移動されます。
以上がJava メモリ管理はヒープ世代とどのように連携しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。