Sobes.tech
Junior — Middle

ARC avtomatik xotira boshqaruv tizimi ob'ektlarga bo'lgan havolalarni qanday kuzatadi va boshqaradi?

sobes.tech AI

AIdan javob

ARC (Avtomatik Referenslar Hisobi) iOS'da xotira boshqaruv tizimidir va avtomatik ravishda ob'ektlarga bo'lgan murojaatlar sonini kuzatadi.

Ishlash prinsipi:

  • Har bir ob'ektning murojaat hisoblagichi bor.
  • Ob'ektga yangi kuchli murojaat yaratilganda, hisoblagich oshadi.
  • Murojaat o'chirilganda yoki nil bo'lsa, hisoblagich kamayadi.
  • Agar hisoblagich nolga teng bo'lsa, ob'ekt avtomatik ravishda xotiradan chiqariladi.

ARC kodni kompilatsiya qilish vaqtida tahlil qiladi va ob'ektlarning hayot aylanishini qo'lda boshqarishsiz boshqarish uchun retain/release chaqiriqlarini qo'shadi.

Xotira bo'shashini oldini olish uchun (retain cycles) ehtiyot bo'lish muhim; bu holatda ikki ob'ekt bir-biriga kuchli murojaatlar bilan murojaat qiladi va xotira bo'shatilmaydi. Buning uchun zaif (weak) yoki egalik qilmaydigan (unowned) murojaatlar ishlatiladi.