«automatic-ref-counting» etiketlenmiş sorular

Otomatik Referans Sayımı (ARC), Objective-C ve Swift nesnelerinin otomatik bellek yönetimini sağlayan bir derleyici özelliğidir.

7
bu blokta kendini güçlü bir şekilde yakalamak, bir tutma döngüsüne yol açacaktır.
Xcode bu uyarıyı nasıl önleyebilirim? Kod pasajı şöyledir: [player(AVPlayer object) addPeriodicTimeObserverForInterval:CMTimeMakeWithSeconds(0.1, 100) queue:nil usingBlock:^(CMTime time) { current+=1; if(current==60) { min+=(current/60); current = 0; } [timerDisp(UILabel) setText:[NSString stringWithFormat:@"%02d:%02d",min,current]];///warning occurs in this line }];


7
ARC ile @autoreleasepool neden hala gereklidir?
Çoğunlukla ARC (Otomatik Referans Sayma) ile, Objective-C nesneleri ile bellek yönetimi hakkında hiç düşünmemize gerek yoktur. NSAutoreleasePoolArtık s oluşturmasına izin verilmiyor , ancak yeni bir sözdizimi var: @autoreleasepool { … } Sorum şu: Manuel olarak serbest bırakmam / otomatik yayınlamam gerektiğinde neden buna ihtiyacım olacak? DÜZENLEME: Tüm cevaplardan ve yorumlardan …

4
Bazı Dosyalar için Otomatik Referans Saymayı Devre Dışı Bırakma
İOS 5 SDK'sını indirdim ve ARC'nin yeni Apple derleyicisinin harika bir özelliği olduğunu gördüm. Şimdilik, birçok üçüncü taraf çerçevesi ARC'yi desteklemiyor. Yeni kodum için ARC kullanabilir ve mevcut tutma / bırakma kodunu değiştirmeden bırakabilir miyim? ARC dönüştürücü burada çalışmaz, çünkü JSONKit gibi bazı çerçeveler dönüştürücü kullanılarak ARC'ye dönüştürülemez. Düzenle: Cevap …



3
ARC ve köprülü döküm
ARC ile, ben artık yayın yapabilirsiniz CGColorRefiçin id. Köprülü bir kadro yapmam gerektiğini öğrendim. Clang belgelerine göre : Bir köprülü dökme C tarzı dökme üç anahtar kelimelerden biriyle açıklamalı edilir: (__bridge T) opişleneni hedef türüne çevirir T. Eğer T bir retainable nesne işaretçisi türüdür, daha sonra op, bir sigara retainable …

7
ARC etkin kodda “[bir nesneyi] güçlü bir şekilde yakalamanın büyük olasılıkla bir tutma döngüsüne yol açması” uyarısını düzeltin
ARC etkin kodda, blok tabanlı bir API kullanırken potansiyel bir tutma döngüsü hakkında bir uyarı nasıl düzeltilir? Uyarı: Capturing 'request' strongly in this block is likely to lead to a retain cycle bu kod snippet'i tarafından üretilen: ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:... [request setCompletionBlock:^{ NSDictionary *jsonDictionary = [[CJSONDeserializer deserializer] …

5
İOS5 SDK'da Otomatik Referans Sayma ile ilgili bazı sorular
Şu anda iPad için bir uygulama geliştiriyorum. İOS 4.2 için geliştirme başladı ve şimdi iOS 4.3 için devam ediyor (ve sanırım tamamlanacak). Sadece iOS 5'teki ARC hakkında okudum ve temelde artık nesneleri serbest bırakıp tutmamız gerekmediğini anladım. Sorularım: İOS 5'e yükseltmeye karar verirseniz, kodumdaki tüm ifadeleri [myObject retain]ve [myObject release]ifadeleri …

2
ARC'yi kullanırken dealloc'ta özellikleri nil olarak ayarlamalı mıyım?
İOS 5'te Otomatik Referans Saymayı öğrenmeye çalışıyorum. Şimdi bu sorunun ilk kısmı kolay olmalı: Ben emin düzeltmek mi DEĞİL ARC kullanırken benim dealloc açık bırakma-mülk ifadeleri yazmaya gerek? Başka bir deyişle, şu mu doğrudur DEĞİL bir açık dealloc gerek? @interface MyClass : NSObject @property (strong, nonatomic) NSObject* myProperty; @end @implementation …

1
"Alıcı tipi 'CALayer', örneğin mesaj bir ileri bildirimdir" burada ne anlama geliyor?
Bir iOS4 projesinden iOS5'e bir kod bloğu taşıyorum ve ARC ile bazı sorunlar yaşıyorum. Kod, bir ekran görüntüsünden bir PDF oluşturur. PDF Oluşturma Kodu UIView *captureView; ... NSMutableData *pdfData = [NSMutableData data]; UIGraphicsBeginPDFContextToData(pdfData, captureView.bounds, nil); UIGraphicsBeginPDFPage(); CGContextRef pdfContext = UIGraphicsGetCurrentContext(); [captureView.layer renderInContext:pdfContext]; UIGraphicsEndPDFContext(); RenderInContext satırı [captureView.layer renderInContext:pdfContext]; aşağıdaki hatayı oluşturur. …

3
Hangi durumlarda, ARC altında __autorelasing sahiplik niteleyicisini yazmamız gerekir?
Bulmacayı tamamlamaya çalışıyorum. __strongNSObject, NSString, vb. gibi tüm Objective-C tutulabilir nesne işaretçileri için varsayılandır. Güçlü bir referanstır. ARC -release, kapsamın sonunda onu bir ile dengeler . __unsafe_unretainedeski yönteme eşittir. Tutulabilir nesneyi korumadan zayıf bir işaretçi için kullanılır. __weakBu, __unsafe_unretainedotomatik olarak sıfırlanan zayıf bir referans olması, yani başvurulan nesnenin serbest bırakılmasının …

6
İOS5'teki güçlü ve zayıf depolamanın açıklaması
İOS5 geliştirme ve objektif-c kullanmada yeniyim. Güçlü ve zayıf depolama arasındaki farkı anlamakta güçlük çekiyorum . Belgeleri ve diğer SO sorularını okudum, ancak hepsi benimle aynı gibi geliyor ve daha fazla içgörü yok. Belgeleri okudum : ARC'ye Geçiş - iOS4 saklama, atama ve yayınlama şartlarına atıfta bulunuyor; kafamı karıştıran Ardından, …

6
ARC'ye mi yoksa ARC'ye mi? Artıları ve eksileri nelerdir? [kapalı]
Kapalı . Bu soruya daha çok odaklanılması gerekiyor . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek mi istiyorsunuz? Soruyu yalnızca bu gönderiyi düzenleyerek tek bir soruna odaklanacak şekilde güncelleyin . 6 yıl önce kapalı . Bu soruyu geliştirin Henüz ARC'yi kullanmadım, çünkü şu anda üzerinde çalıştığım projedeki kodun çoğu …

3
Popover hala görünür durumdayken UIPopovercontroller dealloc'a ulaşıldı
Sizi temin ederim ki sorum için SO'da bir cevap aradım ama hiçbiri yardımcı olmadı. Burada a UIImagePickerControlleriçinde sunması gereken basit bir kod var UIPopoverController: -(void)takePicture:(id)sender{ UIImagePickerController *picker=[[UIImagePickerController alloc] init]; picker.delegate=self; picker.sourceType=UIImagePickerControllerSourceTypeCamera; picker.allowsEditing=YES; UIPopoverController *poc=[[UIPopoverController alloc] initWithContentViewController:picker]; [poc presentPopoverFromBarButtonItem:bbItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:NO]; } Şimdi, ilk kez [UIPopoveController dealloc]ulaştığımda bile ... hatası ve …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.