VMのヒープサイズをプログラム的にvmの引数として設定する方法はありますか?プログラムで最大のJavaヒープサイズを設定する
ような何か:任意のホットスポットJVMと
System.getProperties().put("<heap variable>", "1000m");
VMのヒープサイズをプログラム的にvmの引数として設定する方法はありますか?プログラムで最大のJavaヒープサイズを設定する
ような何か:任意のホットスポットJVMと
System.getProperties().put("<heap variable>", "1000m");
ありません。 JVMヒープパラメータは、コマンドラインでのみ指定することができ、JVMの存続期間中は固定されます。
ホットスポットJavaの実装では、アプリケーションのヒープサイズを変更する唯一の方法は、コマンドラインパラメータが異なる新しいJVMでアプリケーションを再起動することです。
(私は漠然とJVMがいくつかの他のベンダーからは、いくつかのヒープパラメータは実行中のJVMに変更することはできないということ。おそらく誰かが明確にでき思い出す。)
あなたはJVMのスペースとの違いを理解する必要がありますそれが実行される環境 上記のパラメータ(および他の-Xまたは-XXパラメータ)は、JVMを実行する環境によって提供される環境設定です。
Windows XPマシンでは、Windows OSはJVMのイニシエータです。したがって、JVMはOSが提供するパラメータを変更できません。それは論理的です。
@Stephen C、あなたはこの機能を提供するいくつかのVM実装について正しいかもしれませんが、わかりません。
[プログラムでJavaヒープサイズを大きくする方法](http://stackoverflow.com/questions/2073869/how-to-increase-java-heap-size-programmatically) – miku