Sobes.tech
Junior — Middle

iOS resursları idarə etmək üçün avtomatik yaddaş təmizləməsindən istifadə edir?

sobes.tech Süni İntellekt

AI-dan cavab

iOS klassik anlamda yaddaş təmizləməyi istifadə etmir, məsələn, JavaScript və ya Java-da olan çöp toplayıcı kimi. Əvəzinə, iOS yaddaş idarəetmə sistemi olan ARC (Avtomatik Referans Sayımı) istifadə edir.

ARC avtomatik olaraq obyektlərə olan istinadların sayını izləyir və obyekt artıq istifadə olunmadıqda yaddaşı azad edir. İnkişaf etdirici yaddaşı əl ilə azad etmək üçün kod yazmır, lakin düzgün istinad idarəetməsini izləməli və yaddaş sızmalarına səbəb ola biləcək dövrü asılılıqları qarşısını almalıdır.

ARC istifadə nümunəsi:

class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
}

var person1: Person? = Person(name: "Иван")
var person2 = person1  // istinad sayğacı artır
person1 = nil         // sayğac azalır, obyekt hələ də mövcuddur
person2 = nil         // sayğac 0 olur, obyekt sərbəst buraxılır

Beləliklə, iOS yaddaşı avtomatik idarə edir, istinad sayımına əsaslanaraq, çöp toplayıcıya yox.