Pertanyaan yang diberi tag «automatic-ref-counting»

Penghitungan Referensi Otomatis (ARC) adalah fitur kompiler yang menyediakan manajemen memori otomatis objek Objective-C dan Swift.


19
performSelector dapat menyebabkan kebocoran karena pemilihnya tidak diketahui
Saya mendapatkan peringatan berikut oleh kompiler ARC: "performSelector may cause a leak because its selector is unknown". Inilah yang saya lakukan: [_controller performSelector:NSSelectorFromString(@"someMethod")]; Mengapa saya mendapat peringatan ini? Saya mengerti kompiler tidak dapat memeriksa apakah pemilih ada atau tidak, tetapi mengapa hal itu menyebabkan kebocoran? Dan bagaimana saya bisa mengubah …

11
Haruskah IBOutlet menjadi kuat atau lemah di bawah ARC?
Saya mengembangkan secara eksklusif untuk iOS 5 menggunakan ARC. Haruskah IBOutlets ke UIViews (dan subclass) menjadi strongatau weak? Pengikut: @property (nonatomic, weak) IBOutlet UIButton *button; Akan menyingkirkan semua ini: - (void)viewDidUnload { // ... self.button = nil; // ... } Apakah ada masalah dalam melakukan ini? Templat menggunakan strongseperti halnya …


8
Objective-C ARC: kuat vs mempertahankan dan lemah vs menetapkan
Ada dua atribut manajemen memori baru untuk properti yang diperkenalkan oleh ARC, strongdan weak. Terlepas dari copy, yang jelas merupakan sesuatu yang sama sekali berbeda, apakah ada perbedaan antara strongvs retaindan weakvs assign? Dari pemahaman saya, satu-satunya perbedaan di sini adalah yang weakakan menetapkan nilke pointer, sementara assigntidak akan, yang …


2
Mengapa Apple merekomendasikan untuk menggunakan dispatch_once untuk menerapkan pola tunggal di bawah ARC?
Apa alasan yang tepat untuk menggunakan dispatch_once di accessor instance bersama dari singleton di bawah ARC? + (MyClass *)sharedInstance { // Static local predicate must be initialized to 0 static MyClass *sharedInstance = nil; static dispatch_once_t onceToken = 0; dispatch_once(&onceToken, ^{ sharedInstance = [[MyClass alloc] init]; // Do any other …


10
Masalah Semantik: Pembuat properti yang disintesis mengikuti konvensi penamaan Kakao untuk mengembalikan benda-benda 'milik'
Saat ini saya menggunakan iOS 5 SDK yang mencoba mengembangkan aplikasi saya. Saya mencoba membuat properti NSString, dan kemudian mensintesisnya dalam file .m (saya telah melakukan ini sebelumnya tanpa masalah). Sekarang, saya menemukan ini: "Masalah Semantik: Pembuat properti yang disintesis mengikuti konvensi penamaan Kakao untuk mengembalikan objek 'milik'." Ini adalah …

8
Ketika mengonversi proyek untuk menggunakan ARC, apa yang dimaksud dengan "sakelar kasus dalam cakupan terproteksi"?
Ketika mengonversi proyek untuk menggunakan ARC, apa yang dimaksud dengan "sakelar kasus dalam cakupan terproteksi"? Saya mengonversi proyek untuk menggunakan ARC, menggunakan Xcode 4 Edit -> Refactor -> Konversi ke Objective-C ARC ... Salah satu kesalahan yang saya dapatkan adalah "sakelar kasus dalam cakupan yang dilindungi" pada "beberapa" sakelar di …

6
Selalu berikan referensi diri yang lemah ke dalam blok di ARC?
Saya sedikit bingung tentang penggunaan blok di Objective-C. Saat ini saya menggunakan ARC dan saya memiliki cukup banyak blok di aplikasi saya, saat ini selalu mengacu pada selfreferensi yang lemah. selfMungkinkah itu penyebab blok-blok ini mempertahankan dan menjaganya agar tidak dapat dialokasikan kembali? Pertanyaannya adalah, haruskah saya selalu menggunakan weakreferensi …

7
Apa perbedaan antara referensi yang lemah dan referensi yang tidak dimiliki?
Swift memiliki: Referensi yang kuat Referensi yang lemah Referensi yang Tidak Dimiliki Bagaimana perbedaan referensi yang tidak dimiliki berbeda dengan referensi yang lemah? Kapan aman menggunakan referensi yang tidak dimiliki? Apakah referensi yang tidak diketahui memiliki risiko keamanan seperti pointer yang menggantung di C / C ++?

5
Kebocoran apa yang tidak dihitung atau dihitung oleh penghitungan referensi otomatis di Objective-C?
Pada platform Mac dan iOS, kebocoran memori sering disebabkan oleh pointer yang belum dirilis. Secara tradisional, itu selalu sangat penting untuk memeriksa semua dokumen Anda, salinan dan mempertahankan untuk memastikan masing-masing memiliki pesan rilis yang sesuai. Toolchain yang dilengkapi dengan Xcode 4.2 memperkenalkan penghitungan referensi otomatis (ARC) dengan versi terbaru …

8
Bagaimana cara saya menghindari menangkap diri dalam blok ketika menerapkan API?
Saya memiliki aplikasi yang berfungsi dan saya sedang berusaha mengubahnya menjadi ARC di Xcode 4.2. Salah satu peringatan pra-cek melibatkan penangkapan dengan selfkuat di blok yang mengarah ke siklus penyimpanan. Saya telah membuat contoh kode sederhana untuk menggambarkan masalah ini. Saya percaya saya mengerti apa artinya ini tetapi saya tidak …

1
Customallalloc dan ARC (Objective-C)
Di aplikasi iPad kecil saya, saya memiliki fungsi "ganti bahasa" yang menggunakan pengamat. Setiap view controller mendaftar sendiri dengan pengamat saya selama itu viewDidLoad:. - (void)viewDidLoad { [super viewDidLoad]; [observer registerObject:self]; } Ketika pengguna menekan tombol "ganti bahasa", bahasa baru disimpan dalam model saya dan pengamat diberitahu dan memanggil updateUi:pemilih …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.