疑問があります。JVM に次の 2 つのパラメーターを渡したとします。 -Xms256mb -Xmx1024mb プログラムの開始時に 256MB が割り当てられます。次に、いくつかのオブジェクトが作成され、JVM プロセスはより多くのメモリを割り当てようとします。JVM が 800MB を割り当てる必要があるとします。Xmx 属性はそれを許可しますが、システム (Linux/Windows としましょう) で現在利用可能なメモリは 600MB です。OutOfMemoryError がスローされる可能性はありますか? それとも、スワップメカニズムが役割を果たすのでしょうか?
2 番目の質問は、GC アルゴリズムの品質に関するものです。jdk1.5u7 と jdk1.5u22 があるとしましょう。後者の JVM でメモリ リークがなくなり、OutOfMemoryError が発生しない可能性はありますか? 最新版でGCの品質が向上する可能性はありますか?