ホームページ  >  記事  >  Java  >  Java 仮想マシン (JVM) はどのようにしてメモリをさまざまなプールに編成しますか?

Java 仮想マシン (JVM) はどのようにしてメモリをさまざまなプールに編成しますか?

DDD
DDDオリジナル
2024-11-19 12:17:02365ブラウズ

How does the Java Virtual Machine (JVM) organize memory into different pools?

Java メモリ プール部門の説明

Java アプリケーションは、メモリ使用量を効率的に管理するためにさまざまなメモリ プールを利用します。監視ツールである JConsole を使用すると、これらのプールとそれぞれの内容を表示できます。

ヒープ メモリ

ヒープ メモリには、実行時に割り当てられたオブジェクトと配列が保持されます。ヒープ内には 3 つのプライマリ プールがあります:

  • Eden Space: ほとんどのオブジェクトの初期メモリ割り当て。
  • Survivor Space: プールエデンの宇宙ゴミで生き残ったオブジェクトの場合collection.
  • Tenured Generation (Old Gen): 存続領域に長期間存続したオブジェクトのプール。

非ヒープメモリ

非ヒープ メモリには、内部 VM 処理に必要なメモリと、ガベージ コレクションの対象外のデータ。これは次のプールで構成されます:

  • 永続生成: クラスおよびメソッド オブジェクトを含む、VM 自体の反射データ。
  • コード キャッシュ ( HotSpot VM のみ): ネイティブのコンパイルとストレージに使用されるメモリcode.

JConsole に関する追加情報

JConsole は、Java アプリケーションのメモリ使用量に関する洞察を提供します。この監視ツールを効果的に使用するためのガイダンスについては、公式ドキュメントを参照してください。

以上がJava 仮想マシン (JVM) はどのようにしてメモリをさまざまなプールに編成しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。