网上看过很多文章都说是不安全的,其实说的并不准确,好多文章都是定位在了atomic修饰的对象是否安全。然后一棒子否定了atomic本生的线程安全。
说重点:
atomic的本质是保证get set方法的线程安全,并不是保证修饰的对象的线程安全。
atomic 与 nonatomic 的区别如下:
1.atomic与nonatomic的本质区别其实也就是在setter方法上的操作不同,atomic保证了getter和setter存取方法的线程安全,两者都不能保证整个对象是线程安全的。
2.nonatomic的速度要比atomic的快。
鉴于以上两点,大部分使用的是nonatomic这个属性。
网友评论