Junior — Middle
iOS ресурстарды башкаруу үчүн автоматтык эс тутумду тазалоону колдонобу?
sobes.tech AI
AIден жооп
iOS klassik ma'nada yaddaş tazeleşini istifadə etmir, məsələn, JavaScript və ya Java-da olan çöp toplayıcı kimi. Əvəzində, iOS yaddaş idarəetmə sistemindən istifadə edir, bu da ARC (Automatic Reference Counting) adlanır.
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.