2019-11-10 18:20:12 +00:00
parent e60afc2ef9
commit 6d333c12c9

8
Garbage-Collection.md Normal file

@@ -0,0 +1,8 @@
- JVM kümmert sich um GC
- Kann nicht forciert werden, aber per `System.gc()` empfohlen
- Objekte können entfernt werden, wenn kein laufender Thread mehr auf sie zugreifen kann
- Auch möglich, wenn Objekte zyklishce Referenzen haben, aber nicht von außen erreichbar sind
- Darauf achten, wann Objekte erstellt werden!
- `finalize()` in `Object` wird bei GC aufgerufen, aber nur einmalig (und auch nicht zwingend). Dort kann Code ausgeführt werden, der die GC verhindert. Beim nächsten mal wird `finalize()` nicht mehr aufgerufen.
- GC von `Strings` nicht Teil der Prüfung (da durch Konstantenpool schwierigere Regeln)
- Arrays sind Objekte, zählen daher auch zu den Objekten, die von der GC erfasst werden.