Sobes.tech
Junior — Middle

Koja je uloga brojača slabih referenci u upravljanju memorijom?

sobes.tech АИ

Одговор од АИ

Brojač slabih referenci (weak reference count) koristi se u sistemima upravljanja memorijom sa brojanjem referenci (na primer, u ARC na iOS-u) za sprečavanje cikličkih zavisnosti.

Glavna ideja:

  • Jake reference (strong references) povećavaju brojač vlasništva objekta, sprečavajući njegovo brisanje.
  • Slabe reference (weak references) ne povećavaju brojač vlasništva, pa ne sprečavaju brisanje objekta.

Uloga brojača slabih referenci:

  • Omogućava praćenje koliko slabih referenci ukazuje na objekat.
  • Kada se objekat briše (brojač jakih referenci dostigne nulu), slabe reference se automatski nuliraju da bi se izbegli visići pokazivači.

Primer: ako dva objekta međusobno ukazuju jake reference, nikada neće biti obrisani. Korišćenje slabih referenci prekida ciklus, omogućavajući sistemu da ispravno oslobodi memoriju.