在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
atomic:
保证 setter/getter 这两个方法的一个原语操作。如果有多个线程同时调用 setter 的话,不会出现某一个线程执行 setter 全部语句之前,另一个线程开始执行 setter 情况,相当于方法头尾加了锁一样。
nonatomic:(一般情况推荐用)
不保证 setter/getter 这两个方法的一个原语操作,所以你可能会取到不完整的东西。 比如 setter 方法里面改变两个成员变量,如果你用 nonatomic 的话,getter 可能会取到只更改了其中一个变量时候的状态。
关键区别:atomic 是线程安全的,nonatomic 是线程不安全的。如果只是单线程操作的话用 nonatomic 最好,因为后者效率高一些。
|
请发表评论