OutOfMemoryError: GC OverheadOutOfMemoryError — GC Overhead Limit Exceeded
Le garbage collector passe trop de temps à collecter en récupérant trop peu de mémoire.
Causes de cette erreur
La JVM consacre plus de 98 % de son temps au garbage collection tout en récupérant moins de 2 % du heap. Cela indique que l'application fonctionne très près des limites de mémoire.
Comment la corriger
Augmentez la taille du heap avec -Xmx. Profilez l'application pour détecter les fuites mémoire. Réduisez les taux d'allocation d'objets. Optimisez les structures de données pour qu'elles consomment moins de mémoire. Envisagez d'utiliser des collections plus efficaces.
Codes d'erreur associés
FileNotFoundExceptionFileNotFoundException
Le chemin de fichier spécifié n'existe pas ou ne peut pas être ouvert.
DirectoryNotEmptyExceptionDirectoryNotEmptyException
La suppression d'un répertoire échoue car le répertoire n'est pas vide.
CloneNotSupportedExceptionCloneNotSupportedException
La méthode clone() est appelée sur un objet dont la classe n'implémente pas Cloneable.
ClassNotFoundExceptionClassNotFoundException
Une classe est introuvable dans le classpath à l'exécution.
StackOverflowErrorStackOverflowError
La pile d'appels a dépassé sa taille maximale, généralement à cause d'une récursion profonde ou infinie.
BrokenBarrierExceptionBrokenBarrierException
Une CyclicBarrier est dans un état rompu lorsqu'un thread tente d'attendre.