^{ DoSomething; }
gibi bir bloğu bildirir ve bir örnek değişkenine koyarsam, bunu saklamak için Block_copy()
kullanmam gerekiyor mu?Objektif-C blokları otomatikleştiriliyor mu?
cevap
Evet, kopyalamanız gerekiyor. Onlar otomatik olarak çalıştırıldıkları için değil, yığın üzerinde başladıkları için değil. Eğer bir blok özelliği varsa
void storeBlockForLater: (dispatch_block_t) block
{
[someArray addObject:[[block copy] autorelease]];
}
Veya: Düzenli copy
mesajı kullanarak bunları kopyalayabilirsiniz böylece bloklar da, düzenli Objective-C nesneleri gibi davranmaya dikkat edin
@property(copy) dispatch_block_t block;
İstinat değil burada yardım et.
Ayrıca, bu harika makaleyi de buldum: http://cocoawithlove.com/2009 /10/how-blocks-are-implemented-and.html – brian
Yup; ve 'copy' kullanırsanız, 'release' kullanın. Eğer 'Block_copy() 'kullanıyorsanız,' Block_release() 'kullanın. Onları karıştırmayın. – bbum
@bbum 'Block_copy()' ve 'autorelease' kullanmak güvenli midir? Eğer 'autorelease'' 'copy' ile kullanmanız gerekiyor? –
- 1. blokları?
- 2. Kod :: Blokları
- 3. HttpURLConnection.getInputStream() blokları
- 4. Yorum blokları
- 5. Blokları/Erubis
- 6. İç Bağımlı Nesne Blokları RSpec
- 7. Amaçlar-c yöntemi, blokları kullanmak
- 8. nedenim blokları eventloop
- 9. Mongoose sorgulama blokları Node.js
- 10. sfml 'deki baskı blokları
- 11. Windows'taki Blokları Değiştirme (NTFS)
- 12. Ruby - Yöntemlere Geçme Blokları
- 13. SIGSEGV blokları kullanarak nedir?
- 14. Python TPCServer rfile.read blokları
- 15. ObjectiveC blokları Java eşdeğeri
- 16. Magento özel blokları
- 17. Ondalık sınırlayıcıyla veri blokları
- 18. Android - CheckBox blokları ExpandableListView.OnGroupClickListener
- 19. JSON yanıtları hakkındaki yorum blokları
- 20. Blokları AFNetworking yöntemine mi geçirdiniz?
- 21. Çok aşamalı animasyon kullanarak blokları
- 22. Zend Framework - çoklu gezinti blokları
- 23. Arka plan blokları parçacık efektleri
- 24. File.open ve blokları, Ruby 1.8.7
- 25. Sfenks 1.2.3 kullanarak kod blokları
- 26. Git blokları ile clojure kodu yapılandırma
- 27. Etki alanı adı htaccess'te belirli kod blokları
- 28. $ this-> renderTotals() hangi blokları engeller?
- 29. HTML Kodlama Blokları - Geçersiz ifade terim ':'
- 30. ASP.NET Web Sayfalarında Gömülü Kod Blokları nasıl?
Not .. ARC için, bazı örnek kod burada: http://stackoverflow.com/a/20760583/294884 – Fattie