Ich musste richtig dagegen halten um ihn vom Gegenteil zu überzeugen (wahrscheinlich glaubt er es auch heute noch nicht), aber dem ist NICHT so.
- Erstens weil wir hier ungefähr 10000 dieser OutOfMemory Errors sehen, wo definitiv nichts restarted wird
- Zweitens, weil ein OOM eigentlich ein normaler Fehler ist, der (wenn er richtig behandelt wird) auch nicht zum Problem wird.
Es scheint irgendwie common sense zu sein, dass die halbe Welt glaubt dass man mit Java unbegrentzt Objekte zaubern kann - bei einem malloc in C/C++ muss doch auch darauf gefasst sein, dass man mal kein Memory mehr bekommt!
Naja, ich habe besagtem Kollegen dann versucht zu erklären dass es sein könnte dass ein Programm den Fehler berücksichtigt, die OOM Exception fängt und aufgibt. Danach kann der Garbage Collector dann aufräumen weil die Objekte nicht mehr referenziert werden. Die Antwort: *seufz* "OOM Errors kann man nicht fangen".
Lieber Senior Consultant (oder was-auch-immer Kollege), schau bitte hier und wirf deine alten Java Mythen über Bord. Wenn man keine Ahnung hat einfach mal...
http://www.velocityreviews.com/forums/t146111-catching-an-outofmemoryerror.html
Keine Kommentare:
Kommentar veröffentlichen