1

このような開始引数を持つ Java プロセスがあります: -Xms5120m -Xmx5120M

jvm は起動時に 5G RAM を割り当てますか?

-Xms1024m -Xmx5120M と比較して良い方法ですか?

[アップデート]

Xms5120Mを設定しても無視されるようです。プロセスが開始されると、タスク マネージャーは、約 2G RAM しか使用されていないことを示します。何故ですか?

4

2 に答える 2

0

Java は、その時点で必要なものだけを割り当てます。あなたがそれを言うとき、最大でコンピュータに伝えている -Xmx5G が欲しいです。xms は最小システム メモリです。初期メモリ ヒープが 5G を超えず、代わりに 2G を使用している場合、タスク マネージャは単に 2G のメモリが使用されていることを通知しますが、割り当ては表示しません。これは、メモリ ヒープが割り当てられたメモリの 5G をすべて消費していないことを示しています。

于 2014-01-19T15:21:52.807 に答える
0

初期ヒープ メモリをすぐに初期化したい場合は、おそらく-XX:+AlwaysPreTouchJVM オプションを試すことができます。

JVM の初期化中に Java ヒープをプレタッチします。したがって、ヒープのすべてのページは、アプリケーションの実行中にインクリメンタルにではなく、初期化中にデマンド ゼロになります。

http://www.oracle.com/technetwork/articles/java/vmoptions-jsp-140102.html

于 2017-04-16T07:42:59.207 に答える