Slyh: Java Frage

Beitrag lesen

Hallo,

  • Keine Speicherlöcher durch den Einsatz eines Garbage-Collectors

Dem möchte ich widersprechen. Zwar kann man in Java keine Speicherlöcher im
klassischen Sinne erzeugen, also indem ein Programm einen Speicherbereich
anfordert, aber auf diesen nicht mehr zugreifen kann, weil kein Pointer mehr
darauf existiert. In Java muß ja zumindest ein Objekt noch eine Referenz auf
ein anderes Objekt besitzen muß, damit dieses nicht weggeräumt wird, also
einem Memory Leak entsprechen würde. Daher könnte man annehmen, dass es dieses
Problem in Java nicht gibt.

Tatsächlich ist es aber so, dass man Quasi-Speicherlöcher erzeugen kann.
Bevor ich mir jetzt lange erkläre, linke ich einfach auf einen Artikel von
IBM, der die Problematik erklärt: http://www.ibm.com/developerworks/java/library/j-leaks/

Ansonsten findet Google massenhaft Material zu den Suchbegriffen "java memory leak".

Gruß
Slyh