大量のヒープ スペースを必要とする Java プログラムがあります。(他のコマンド ライン引数の中で) 引数 -Xmx1500m で開始します。これは、1500 MB の最大ヒープ スペースを指定します。新たに再起動した Windows XP ボックスでこのプログラムを起動すると、問題なく起動して実行されます。しかし、プログラムが数回実行された場合、コンピューターがしばらく起動していた場合など、起動しようとすると次のエラーが発生します。
VM の初期化中にエラーが発生しました オブジェクト ヒープに十分なスペースを予約できませんでした Java仮想マシンを作成できませんでした。
Windows自体がメモリの断片化に苦しんでいると思われますが、この疑いを確認する方法がわかりません. これが発生した時点で、タスク マネージャーと sysinternals procexp は 2000MB の空きメモリを報告します。内部フラグメンテーションに関連するこの質問を見てきました
最初の質問は、どうすれば自分の疑いを確認できるでしょうか? 2 番目の質問は、私の疑いが正しければ、この問題を解決するツールを知っている人はいますか? かなり調べましたが、マシンを定期的に再起動する以外に役立つものは見つかりませんでした。
ps - オペレーティング システムを変更することも、現在実行可能なオプションではありません。