0

この例外がスローされると、これを引き起こしたオブジェクトはメモリからスローされますか? それはすぐに起こりますか?

つまり、リストにオブジェクトを追加すると、ある時点でこれが発生しなくなり、OOM エラーがスローされます。その時、リスト自体に何か起こるのでしょうか?

java.lang.OutOfMemoryError: Java heap space
4

3 に答える 3

1

これは、新しいオブジェクトを作成できなかった場合にスローされます。現在のオブジェクトは引き続き存在します。

ただし、このようなエラーの性質上、現在のコードは実行を停止し、現在のオブジェクトはすぐにガベージ コレクションされる可能性があります。コードの構造と、オブジェクトへの参照がまだ保持されているかどうかによって異なります。

于 2012-07-06T02:23:00.987 に答える
0

ドキュメントから:

メモリ不足のため Java 仮想マシンがオブジェクトを割り当てることができず、ガベージ コレクタによって使用できるメモリがなくなった場合にスローされます。

于 2012-07-06T02:23:01.483 に答える
0

http://docs.oracle.com/javase/6/docs/api/によると、 OutOfMemoryError は次のとおりです。

メモリ不足のため Java 仮想マシンがオブジェクトを割り当てることができず、ガベージ コレクタによって使用できるメモリがなくなった場合にスローされます。

そのため、作成しようとしている新しいオブジェクトにメモリを割り当てるのに十分なヒープスペースがないことを JVM が認識するとすぐに発生します。したがって、十分なメモリがないため、オブジェクトは作成されません。

于 2012-07-06T02:24:22.900 に答える