![](/img/trans.png)
[英]What are the Objective-C @property keywords in brackets like readonly referred to as?
[英]Objective-C Property Keywords
好的 - 新手Objective-C問題:
聲明屬性時,有如下屬性:
@property (weak, nonatomic)
我意識到我需要閱讀這篇文章才能完全理解它,但我發現的大部分內容都是參考資料,所以鏈接到一篇好文章,可以解釋最佳實踐/使用場景(何時使用哪些屬性用於基元,參考類型,出口)等等)或者幾個例子將不勝感激。
謝謝!
盡管回答我已經找到了這個問題,但是谷歌相同的問題,並且還發現蘋果的這篇文章完全解釋了整個事情。
希望對正在研究同樣事物的人有所幫助,
Atomicity與線程有關,對於新手而言是一個非常高級的主題。 然而,簡短的回答是iOS屬性總是被聲明為非原子的。 這里有一些關於它的更詳細的信息 。
弱/強關鍵字與ARC的內存管理有關,可以防止所謂的保留周期。 對於新手來說,這也可能是一個棘手的概念,但是高級概述是當兩個對象彼此具有強引用時發生保留循環,因此ARC不會破壞任何對象。 這是一種內存泄漏的形式,因為您可能有一個不再使用但仍占用內存的對象。 通過將屬性聲明為弱,它將確保它不會自動銷毀,只要某些東西仍然具有強烈的引用。 例如,假設您有一個包含幾個對象的數組。 其中兩個對象具有很強的相互引用。 然后,陣列失去其所有者並被銷毀。 但是,該數組中指向彼此的兩個對象不會被破壞,因為它們具有強引用。 因此,你有兩個你無法訪問的對象,因為擁有的數組被銷毀,但它們仍然占用內存。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.