Junior — Middle
Obyekt tərəfindən istifadə olunan yaddaşın azad olunması nə vaxt baş verir?
sobes.tech Süni İntellekt
AI-dan cavab
iOS-da, obyektin yaddaşdan azad olunması, onun istinad sayğacı (retain count) sıfıra çatanda baş verir. Bu, obyektə artıq heç kim istinad etmədiyi və sistemin onun tutduğu yaddaşı azad edə biləcəyi anlamına gəlir.
Müasir tətbiqlərdə, ARC (Avtomatik İstinad Sayımı) istifadə olunur, bu, obyektə təyin və silinən istinadlar zamanı avtomatik olaraq istinad sayğacını artırır və azaldır.
Nümunə:
class MyClass {}
var obj: MyClass? = MyClass() // istinad sayğacı = 1
obj = nil // istinad sayğacı = 0, obyekt azad edilir
Beləliklə, yaddaşın azad olunması, obyektin son sahibi onun istinadını dayandırdıqdan dərhal sonra baş verir.