SORU
8 Ocak 2011, CUMARTESİ


Ne zaman kullanılır -retainCount?

Ne durumda* *0 şimdiye kadar kullandığınız ve sonunda gelebilecek sorunları kullanarak yaptığını bilmek istiyorum.

Teşekkürler.

CEVAP
8 Ocak 2011, CUMARTESİ


Hiç ama hiç işe yarar bir şey söylediği için -retainCount, kullanmalısınız. Uygulama Vakfı ve AppKit/UİKit çerçeveler var opak; bilmiyorsun nedir olmaktan korudu, neden bu şekilde korunur, kim tutucu, zaman korudu.

Örneğin:

  • [NSNumber numberWithInt:1] 1 retainCount var diye düşünüyor. Değil. 2.
  • @"Foo" 1 retainCount var diye düşünüyor. Değil. 1152921504606846975.
  • [NSString stringWithString:@"Foo"] 1 retainCount var diye düşünüyor. Değil. Yine 1152921504606846975.

Temel olarak, bu yana bir şey olabilir korumak bir nesne (ve bu nedenle değiştirme retainCount), ve o zamandan beri yok kaynak en kodu çalışan bir uygulama, bir nesnenin retainCount anlamsız.

Eğer bir nesneyi ayırmanın almıyor neden bulmaya çalışıyorsan, Aletleri Sızıntıları aracını kullanın. Eğer bir nesne çok yakında ayırmanın nedenini bulmaya çalışıyorsan, Aletleri Zombi aracını kullanın.

Ama kullanmayın -retainCount. Gerçekten değersiz bir yöntem.

edit

Herkes http://bugreport.apple.com gidip -retainCount itiraz isteyin lütfen. İste o insanlar, o kadar iyi olur.

edit #2

Bir güncelleme,[NSNumber numberWithInt:1] şimdi 9223372036854775807 retainCount. Eğer kod 2, kod artık kırılmış olmasını bekliyordu.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • itfigueres

    itfigueres

    12 EKİM 2013
  • martin shervington

    martin sherv

    7 EKİM 2011
  • Plugable

    Plugable

    19 Mayıs 2010