OutOfMemoryError: GC OverheadOutOfMemoryError — GC Overhead Limit Exceeded
Garbage collector tráví příliš mnoho času sběrem s minimálním uvolněním paměti.
Co způsobuje tuto chybu
JVM stráví více než 98 % času garbage collection a přitom uvolní méně než 2 % haldy. To indikuje, že aplikace pracuje velmi blízko paměťovým limitům.
Jak to opravit
Zvětšete velikost haldy pomocí -Xmx. Profilujte úniky paměti. Snižte míru alokace objektů. Optimalizujte datové struktury pro menší spotřebu paměti. Zvažte efektivnější kolekce.
Související chybové kódy
FileNotFoundExceptionFileNotFoundException
Zadaná cesta k souboru neexistuje nebo ji nelze otevřít.
DirectoryNotEmptyExceptionDirectoryNotEmptyException
Smazání adresáře selhalo, protože adresář není prázdný.
CloneNotSupportedExceptionCloneNotSupportedException
Metoda clone() je zavolána na objektu, jehož třída neimplementuje Cloneable.
ClassNotFoundExceptionClassNotFoundException
Třídu nelze za běhu najít na classpath.
StackOverflowErrorStackOverflowError
Zásobník volání překročil svou maximální velikost, obvykle kvůli hluboké nebo nekonečné rekurzi.
BrokenBarrierExceptionBrokenBarrierException
CyclicBarrier je v přerušeném stavu ve chvíli, kdy se vlákno pokouší čekat.