まず、ヒープメモリの使用、ロードされたクラス、スレッド数、その他の情報を含むJVMの一般的な状況を見てみましょう。下の図に示すように:
次に、JConsoleを通じて見られるJVMのメモリ使用量を見てみましょう。 JVMは主に2種類のメモリを管理します:ヒープと非ヒープ。簡単に言えば、ヒープは、開発者向けに予約されているJavaコードがアクセスできるメモリです。非HEAPは、JVMのためにそれ自体のために予約されています。すべてのメソッド領域、JVMの内部処理または最適化に必要なメモリ(JITコンパイルされたコードキャッシュなど)、各クラス構造(ランタイム定数プール、フィールド、メソッドデータなど)、およびメソッドとコンストラクターのコードは非ヒープメモリにあります。 JConsoleでは、以下の緑色のバーチャートに示すように、各パーツのメモリステータスが表示されます。 JConsoleでは、JVMのヒープメモリは、Eden Space Memory Pool、Survivor Space Memory Pool、Thenued Gen Memory Pool、および非HEAPメモリに分割されます。下の図に示すように:
最後に、jconsoleを使用して、下の図に示すように、JVMのパラメーター設定を確認しましょう。
上記のJVMパラメーターは次のとおりです。
-XMs最小ヒープスペース
-XMX最大ヒープスペース
-XMN新世代スペース
-XSSスレッドスタックスペース
-xx:permsize = xxx永久生成スペース
-xx:maxpermsize = xxx最大永続生成スペース