私は、NeverReturnと呼ばれる無限ループ(何もせず、ループとスリープ)を実行するクラスを持っています。私は、Windows XP 32ビットで次のコマンドを使用して、それを実行しよう:1台のマシンにいくつのJVMを置くことができますか?
javaの-Xms1200M NeverReturn
私は同時に唯一の4 Javaのインスタンスを作成することができますコマンドを見つけます。 5番目以降のjavaコマンドはjvmの作成に失敗します。
コマンドを-Xms600Mに変更すると、8つのJavaインスタンスを作成できます。 9日は失敗する。
誰もそれを説明できますか?私はsun jdk1.6 update 23とjdk1.5 update 22を使用しています。
-Xmsで 's'を指定すると、JVMは**少なくともそのメモリを割り当てます**。たぶん、あなたは '-Xmx'を考えていて、 'x'で、**ほとんどのメモリを**多く割り当てます。あなたのマシンが6GBの場合、あなたが見ているものは、 '-Xms'を使ったことで全く正常です。 – Gugussee
32ビットXPバージョンは4GBしか扱えません。その場合は3GB程度しかありません。 – tigger
私は-Xmsと-Xmxの違いを理解しています。私の質問は、32ビットWindowsシステム上で約2GBのメモリをすべてのプロセスに与える能力をOSに持っていることです。しかし、なぜこれらのjvmプロセスがまだいくつかのlimiationクロスがあります。 – xeranic