Junior — Middle
Bir nesneye güçlü referans sayacıyla işaret edilen ve erişilemez hale gelen belleğin otomatik serbest bırakılması ne zaman gerçekleşir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Güçlü referanslara sahip bir nesne için bellek otomatik olarak serbest bırakılır, bu nesneye güçlü referans sayısı sıfıra düştüğünde, yani nesneye güçlü referans kalmadığında.
Bu noktada, nesne erişilemez hale gelir ve bellek yönetim sistemi (iOS'taki ARC) tarafından silinebilir. En az bir güçlü referans varsa, nesne bellekte kalır.
Örnek:
class MyClass {}
var a: MyClass? = MyClass() // güçlü referans sayısı = 1
var b = a // güçlü referans sayısı = 2
a = nil // güçlü referans sayısı = 1
b = nil // güçlü referans sayısı = 0, nesne serbest bırakılır
Bu şekilde, nesne artık gerekmediğinde ve ona güçlü referans kalmadığında bellek otomatik olarak serbest bırakılır.