iOS

Memory Management & ARC

ARC, strong/weak/unowned, retain cycle'lar, capture list'ler, bellek sızıntıları, profiling

22 mülakat soruları·
Senior
1

iOS'ta ARC (Automatic Reference Counting) nedir?

Cevap

ARC, bir nesneye yapılan referansları sayan otomatik bir bellek yönetimi mekanizmasıdır. Derleyici retain ve release çağrılarını otomatik olarak ekleyerek manuel yönetim ihtiyacını ortadan kaldırır. Referans sayısı sıfıra ulaştığında nesne bellekten kaldırılır (deallocated). ARC, yaygın bellek sızıntılarını önleyerek iOS programlamayı önemli ölçüde basitleştirir.

2

ARC'ta strong reference nedir?

Cevap

Strong reference, referans verilen nesnenin referans sayacını artırır. Varsayılan olarak tüm değişkenler strong reference'tır. En az bir strong reference nesneyi işaret ettiği sürece nesne bellekte kalır. Çok fazla strong reference kullanmak, dealokasyonu engelleyen retain cycle'lar oluşturabilir.

3

Retain cycle (tutma döngüsü) nedir?

Cevap

Retain cycle, iki veya daha fazla nesnenin birbirine strong reference tuttuğunda oluşur. Her biri diğerinin referans sayısının sıfıra ulaşmasını engellediği için hiçbiri bellekten kaldırılamaz. Bu bir bellek sızıntısı oluşturur. Retain cycle'lar, döngüsel ilişkilerde weak veya unowned reference kullanılarak önlenir.

4

ARC bellek yönetiminde deinit'in rolü nedir?

5

weak ve unowned reference arasındaki fark nedir?

+19 mülakat soruları

Bir sonraki mülakatın için iOS'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla