原子屬性

屬性中的修飾符:

nonatomic非原子屬性:

atomic:原子屬性:

原子屬性(線程安全),針對多線程設計的,默認值。

保證同一時間只有一個線程能夠寫入(但是同一時間多個線程都可以取值)atomic本身就是一把鎖(自旋鎖)

單寫多讀:單個線程寫入,多個線程可以讀取。

//注意:線程鎖所得是代碼塊,不是其他。是不能訪問對應的代碼塊。

nonatomic和atomic的區別:

atomic:線程安全,乣消耗大量的資源。

nonatomic:線程不安全,適合內存小的移動設備。

iOS開發的建議:

所有屬性都聲明為nonatomic

盡量避免多線程搶奪同一資源。

盡量將加鎖、資源搶奪的業務邏輯交給服務器端處理,減小移動客戶端的壓力。


屬性原子性的原理


注釋:原子屬性只能保證只讀的時候不出問題,但是他不能保證同時讀寫的時候不出問題。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容