JVM を起動するときの -Xms および -Xmx パラメータとは何ですか? 質問する

JVM を起動するときの -Xms および -Xmx パラメータとは何ですか? 質問する

JVM のXmsおよびパラメータとは何ですか? また、それらのデフォルト値は何ですか?Xmx

ベストアンサー1

このフラグはXmx、Java 仮想マシン (JVM) の最大メモリ割り当てプールを指定し、 はXms初期メモリ割り当てプールを指定します。

これは、JVM がメモリ量で起動されXms、最大量のメモリを使用できることを意味Xmxします。たとえば、以下のように JVM を起動すると、256 MB のメモリで起動し、プロセスは最大 2048 MB のメモリを使用できます。

java -Xms256m -Xmx2048m

メモリ フラグは、キロバイト、メガバイトなどのさまざまなサイズで指定することもできます。

-Xmx1024k
-Xmx512m
-Xmx8g

フラグにはXmsデフォルト値はなく、Xmx通常は 256 MB のデフォルト値を持ちます。これらのフラグは、 に遭遇したときによく使用されますjava.lang.OutOfMemoryError

これらの設定を使用する場合、これらの設定はJVMのヒープ用であり、JVMはヒープに割り当てられたサイズよりも多くのメモリを使用する可能性があることに留意してください。Oracleのドキュメント:

JVM はヒープ以外のメモリも使用することに注意してください。たとえば、Java メソッド、スレッド スタック、ネイティブ ハンドルは、JVM 内部データ構造と同様に、ヒープとは別のメモリに割り当てられます。

おすすめ記事