Sobes.tech
Junior — Middle

Puteți explica cum funcționează mecanismul MRC?

sobes.tech AI

Răspuns de la AI

MRC (Numărătoarea Manuală a Referințelor) este un mecanism de gestionare a memoriei în iOS, în care programatorul este responsabil pentru numărătoarea referințelor către obiecte.

Principiul de funcționare:

  • Fiecare obiect are un contor de referințe.
  • La crearea sau atribuirea unui obiect, contorul crește (retain).
  • La eliberarea referinței, contorul scade (release).
  • Când contorul ajunge la zero, obiectul este distrus.

Exemplu în Objective-C:

NSObject *obj = [[NSObject alloc] init]; // contor = 1
[obj retain]; // contor = 2
[obj release]; // contor = 1
[obj release]; // contor = 0, obiectul este șters

Este important să apelați manual retain și release pentru a evita scurgerile de memorie sau ștergerea prematură a obiectelor. În proiectele moderne iOS, se folosește mai frecvent ARC (Numărătoarea Automată a Referințelor), care automatizează acest proces.