Sobes.tech
Junior — Middle

MRC mekanizmasının nasıl çalıştığını açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

MRC (Manuel Referans Sayımı), iOS'ta bellek yönetimi mekanizmasıdır ve burada programcı, nesnelere referans sayımından sorumludur.

Çalışma prensibi:

  • Her nesnenin bir referans sayacı vardır.
  • Bir nesne oluşturulurken veya atanırken, sayaç artar (retain).
  • Referans serbest bırakılırken, sayaç azalır (release).
  • Sayaç sıfıra ulaştığında, nesne yok edilir.

Objective-C'de örnek:

NSObject *obj = [[NSObject alloc] init]; // sayaç = 1
[obj retain]; // sayaç = 2
[obj release]; // sayaç = 1
[obj release]; // sayaç = 0, nesne silinir

Bellek sızıntılarını veya nesnelerin erken silinmesini önlemek için retain ve release'u manuel olarak çağırmak önemlidir. Modern iOS projelerinde, bu süreci otomatikleştiren ARC (Otomatik Referans Sayımı) daha sık kullanılmaktadır.