Sobes.tech
Junior — Middle

Cum eliberează mecanismul de colectare a gunoiului memoria neutilizată în Java?

sobes.tech AI

Răspuns de la AI

În Java, mecanismul de colectare a gunoiului (Garbage Collector, GC) eliberează automat memoria ocupată de obiectele care nu mai sunt utilizate de program.

Principiul de funcționare:

  1. Detecția accesibilității obiectelor: GC urmărește obiectele la care nu mai există referințe din părțile active ale programului (de exemplu, din stiva de apeluri sau variabile statice).
  2. Marcarea: Toate obiectele accesibile sunt marcate ca fiind vii.
  3. Curățarea: Obiectele care nu sunt marcate ca fiind vii sunt considerate gunoi și memoria lor este eliberată.

Java utilizează diferite algoritmi GC (de exemplu, Mark-and-Sweep, Generational GC), care optimizează gestionarea memoriei și reduc pauzele în rularea aplicației.

Exemplu: dacă un obiect este creat în interiorul unei metode și după ieșirea din metodă nu mai există referințe către el, GC va elibera în timp memoria ocupată de acel obiect.