後にすべての過剰ヒープを保持することを可能にします。グラフの青い線は、実際にオブジェクトを保持しているヒープの量です。表示されていないものは、割り当てられているヒープのサイズです。これは大きく、しばしばはるかに大きいので、JVMはスペースを使い果たすことなく多くのオブジェクトを割り当てることができ、 )。あなたのケースでは、システムが表示している100MBのうちのいくつかはJVM自体ですが、そのほとんどは割り当てられているが使用されていないヒープである可能性があります。
ヒープサイズを指定せずにJavaプログラムを実行すると、JVMはマシン、OS、JVMのバージョンなどに基づいて適切な設定を見つけようとします。単純なHello Worldを実行すると私のマシンは16GBのRAMとJava 8で、最初はヒープ用に256MBを割り当てました。明らかにそれ以上のものが必要です!これを少なくするように強制する場合は、-Xms
コマンドラインを使用して初期ヒープ割り当てを設定し、-Xmx
を使用して最大許容値を設定することができます。私の推測では、-Xms20m
のようなものを設定すると、あなたのプロセスで使用されているメモリが少なくなると思います。 IntelliJで、この設定を実行コンフィギュレーションのVM Options
フィールドに追加します。
このJavaアプリケーションとは何ですか?スイング? –
@CoderinoJavarino no。名前はタイトルとテキストに表示されます。 –
なぜ気にしますか?これはintellij、非常に大きなJavaベースのプログラムです。表示されている2つ以上のプロセスでChromeの処理能力が100MBを超えているという苦情はありません。 100MBはあまりメモリではありません.Gnomeの処理にはそれ以上の時間がかかります。あなたが本当に問題を抱えているなら、それを私たちに知らせてください。 100MBのメモリはもう何もありません。 – stdunbar