Нет.Маркировка свойства atomic на самом деле является просто подсказкой @synthesize
, что код, который он генерирует для этого свойства, должен использовать что-то вроде @synchronized
для обеспечения атомарного доступа к свойству.
Примечаниечто на практике синтезированному геттеру / сеттеру нет необходимости использовать @synchronized
.Например, если базовый ivar может быть прочитан / записан атомарно без блокировок (например, обычное int на многих платформах), фактическая блокировка, сгенерированная компилятором, может отсутствовать.Компилятор также может использовать любой другой метод блокировки, отличный от @synchronized
.