atomic, nonatomic 属性

2015-10-05  本文已影响0人  知心哥哥noly

发现百度上搜这个属性的文章语焉不详,或者干脆就是错的。

atomic 保证值从 getter/setter 中获取

即线程A正在调用getter的过程中,线程B调用了这个值的setter,线程A将得到一个autorelease的对象。即线程A保证能够得到一个值。

nonatomic则没有这个保证,所以nonatomic可能比atomic更快。

atomic并非线程安全的,线程A取一个atomic属性,当前值a1, 此时线程B,C同时调用这个属性的setter, 假设B设置为a2, C设置为a3,此时A获取的值可能是a1, a2, a3中任意一个。

上一篇 下一篇

猜你喜欢

热点阅读