В Objective-C у вас есть различие между атомными и неатомическими свойствами:
@property (nonatomic, strong) NSObject *nonatomicObject;
@property (atomic, strong) NSObject *atomicObject;
Из моего понимания вы можете безопасно читать и записывать свойства, определенные как атомарные из нескольких потоков, при одновременном написании и доступе к неатомическим свойствам или ivars из нескольких потоков в результате могут возникать поведение undefined, включая ошибки с плохим доступом.
Итак, если у вас есть переменная типа Swift:
var object: NSObject
Можно ли безопасно читать и записывать эту переменную параллельно? (Без учета фактического значения этого).