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.