两者的区别: 具备atomic特质会通过锁定机制来保持其操作的原子性,如果两个线程读写同一属性 那么无论何时,总能看到有效的属性值。若不加锁或者使用nonatomic的话,当一个线程连续多次读取某属性的时候 有别的线程在同时改写该值,那么即便声明为atomic还是会读取到不同的值,因此iOS开发中一般都会使用nonatomic 属性. 但是在OS X 程序开发时使用atomic不会遇到性能瓶颈。
《52个有效方法p27》
两者的区别: 具备atomic特质会通过锁定机制来保持其操作的原子性,如果两个线程读写同一属性 那么无论何时,总能看到有效的属性值。若不加锁或者使用nonatomic的话,当一个线程连续多次读取某属性的时候 有别的线程在同时改写该值,那么即便声明为atomic还是会读取到不同的值,因此iOS开发中一般都会使用nonatomic 属性. 但是在OS X 程序开发时使用atomic不会遇到性能瓶颈。
《52个有效方法p27》