2011-01-25 22 views
6

VMのヒープサイズをプログラム的にvmの引数として設定する方法はありますか?プログラムで最大のJavaヒープサイズを設定する

ような何か:任意のホットスポットJVMと

System.getProperties().put("<heap variable>", "1000m"); 
+2

[プログラムでJavaヒープサイズを大きくする方法](http://stackoverflow.com/questions/2073869/how-to-increase-java-heap-size-programmatically) – miku

答えて

7

ありません。 JVMヒープパラメータは、コマンドラインでのみ指定することができ、JVMの存続期間中は固定されます。

ホットスポットJavaの実装では、アプリケーションのヒープサイズを変更する唯一の方法は、コマンドラインパラメータが異なる新しいJVMでアプリケーションを再起動することです。

(私は漠然とJVMがいくつかの他のベンダーからは、いくつかのヒープパラメータは実行中のJVMに変更することはできないということ。おそらく誰かが明確にでき思い出す。)

0

あなたはJVMのスペースとの違いを理解する必要がありますそれが実行される環境 上記のパラメータ(および他の-Xまたは-XXパラメータ)は、JVMを実行する環境によって提供される環境設定です。

Windows XPマシンでは、Windows OSはJVMのイニシエータです。したがって、JVMはOSが提供するパラメータを変更できません。それは論理的です。

@Stephen C、あなたはこの機能を提供するいくつかのVM実装について正しいかもしれませんが、わかりません。

関連する問題