Властивість 'nonatomic' протилежна властивості 'atomic' за умовчанням. Змінна з властивістю «nonatomic» означає це змінна не є потокобезпечною. Це може здатися страшним, але це просто означає, що до змінної можна отримати доступ із кількох потоків одночасно. 9 грудня 2013 р.
Атомний означає, що лише один потік має доступ до змінної (статичний тип). Atomic є потокобезпечним, але він повільний. Неатомний означає, що кілька потоків отримують доступ до змінної (динамічний тип). Nonatomic небезпечний для потоків, але він швидкий.
: не пов’язані з атомною зброєю, не будучи та не пов’язані з нею. неатомні бомби/зброя.
Використовуйте Atomic: коли вам потрібно переконатися, що доступ до властивості здійснюється потоково-безпечним способом і продуктивність не є критичною проблемою. Використовуйте Nonatomic: коли продуктивність має вирішальне значення, і ви можете керувати безпекою потоків іншими засобами.
Типи даних
- BOOL. Введіть, щоб представити логічне значення.
- Категорія. Непрозорий тип, який представляє категорію.
- Клас. Непрозорий тип, який представляє клас Objective-C.
- Івар. Непрозорий тип, який представляє змінну екземпляра.
- метод. Непрозорий тип, який представляє метод у визначенні класу.
- NSInteger. …
- NSUInteger. …
- SEL.
Змінна з властивістю «nonatomic» означає це змінна не є потокобезпечною. Це може здатися страшним, але це просто означає, що до змінної можна отримати доступ із кількох потоків одночасно. Властивість 'atomic' не дозволяє цього, що робить властивість 'nonatomic' швидшою для використання.