Sobes.tech
Junior — Middle

Hogyan határozza meg a JVM, hogy a WeakReference által hivatkozott objektum törölhető a szemétgyűjtő által?

sobes.tech MI

Válasz az MI-től

A JVM a gyenge hivatkozások (WeakReference) mechanizmusát használja, hogy lehetővé tegye a szemétgyűjtő számára az olyan objektumok eltávolítását, amelyekre csak gyenge hivatkozások utalnak. Ha egy objektumnak nincs erős (strong) hivatkozása, a JVM a következő szemétgyűjtési ciklusban azt eltávolíthatónak tekinti, még akkor is, ha van WeakReference rá. Így a JVM ellenőrzi, hogy van-e erős hivatkozás az objektumra — ha nincs, az objektum elérhetetlennek számít, és eltávolítható, a WeakReference pedig törlődik (nullá válik).