Duplicar posibles:
Catching java.lang.OutOfMemoryError¿Es una mala idea capturar OutOfMemoryError?
OutOfMemoryError son:
inicia cuando la Máquina Virtual de Java no puede asignar un objeto porque que está fuera de la memoria, y no más la memoria podría estar disponible en el recolector de basura
Java dice:
un error es una subclase de Throwable que indica problemas serios que una aplicación razonable no debe tratar de atrapar. La mayoría de estos errores son condiciones anormales.
Esto se siente como audiencia:
Si usted se está ahogando, ser razonable: no se debe tratar de nadar hacia arriba para mantener su cabeza fuera del agua. La muerte es típicamente el resultado de condiciones anormales.
Imaginemos un escenario donde se ejecuta un servicio. Por alguna razón, otra aplicación en el mismo servidor está consumiendo mucha memoria, causando un OOM inesperado en su servicio. ¿Es tan mala idea tratar de reducir el consumo de memoria de este servicio para permanecer disponible para el usuario?
¿O hay algo más fundamental que sucede en el nivel de JVM que impide la implementación de una solución de este tipo después de que se ha lanzado el OOM?
@aix Pude cortar un par de referencias a algunas estructuras de datos al establecerlas como nulas incluso si no las guardé correctamente mientras todavía estaba bien con eso en situaciones dramáticas. – JVerstry
@dogbane Su referencia no responde mi pregunta, esta pregunta no es un duplicado. – JVerstry
Una mejor analogía sería: conducir un automóvil que se incendia. No intente continuar y llegar a su destino. Ponte del hombro duro. – Jim