屬性關(guān)鍵字

讀寫權(quán)限關(guān)鍵字

readonly

readwrite? (默認(rèn))

原子性

atomic(默認(rèn))?

保證 賦值和獲取是線程安全的? (直接對成員變量的獲取? 賦值)并不代表操作和訪問

假如我們用atomic? 來修飾一個(gè)數(shù)組? 對數(shù)組進(jìn)行賦值? 獲取 是可以保證線程安全的? 但是當(dāng)我們對這個(gè)數(shù)組進(jìn)行操作時(shí)? 如? 增? 刪? ?就不在atomic 的負(fù)責(zé)范圍之內(nèi)了? 也就是說 用atomic修飾一個(gè)數(shù)組 對數(shù)組進(jìn)行 增加 刪除操作 是不保證線程安全的 只對 賦值 獲取有效

noatomic

引用計(jì)數(shù)

return / strong

return 一般在MRC中使用

strong 一般在ARC中使用

這兩個(gè)是用來修飾對象的

assign / unsafe_unretained

assign 可以修飾基本類型 也可以修飾對象類型

unsafe_unretained 只有在MRC中 使用的比較頻繁


懸垂指針 也就是 assign 所修飾的對象在被釋放之后? assign指針仍然指向原對象 地址? 這是如果通過assign指針繼續(xù)訪問源對象 可能就會由于懸垂指針的原因 導(dǎo)致內(nèi)存泄漏 或 程序異常

weak


copy


淺拷貝 會發(fā)生引用計(jì)數(shù)的改變 不會開辟新的內(nèi)存空間


兩塊內(nèi)容相同的不同空間






進(jìn)行拷貝之后 可變數(shù)組 copy 過后變成了 不可變數(shù)組 在調(diào)用時(shí)候很可能出現(xiàn)異常 crash

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容