Junior — Middle
Hogyan követi és kezeli az ARC automatik memória kezelés rendszere az objektumokra mutató hivatkozásokat?
sobes.tech MI
Válasz az MI-től
ARC (Automatikus Referencia Számlálás) az iOS memória kezelésének rendszere, amely automatikusan nyomon követi az objektumokra mutató hivatkozások számát.
Működési elv:
- Minden objektumnak van egy hivatkozásszámlálója.
- Amikor egy új erős hivatkozás jön létre egy objektumra, a számláló növekszik.
- Amikor egy hivatkozás törlésre kerül vagy nil lesz, a számláló csökken.
- Ha a számláló eléri a nullát, az objektum automatikusan felszabadul a memóriából.
Az ARC elemzi a kódot fordításkor, és retain/release hívásokat illeszt be az objektumok életciklusának kezelésére anélkül, hogy kézi memória kezelést kellene végezni.
Fontos elkerülni a ciklikus hivatkozásokat (retain cycles), amikor két objektum erős hivatkozásokkal hivatkozik egymásra, ami megakadályozza a memória felszabadulását. Ehhez gyenge (weak) vagy tulajdon nélküli (unowned) hivatkozásokat használnak.