Objective-C 記憶體管理原則

來源:互聯網
上載者:User

標籤:

 

 

記憶體管理方針
用於記憶體管理的基本模型採用引用計數的環境之中提供的組合方法中定義在NSObject協議和標準方法的命名規範。NSObject類也定義了一個方法:dealloc,當調用一個對象時自動回收,本文描述了Cococa程式中你需要知道的基本規則,同時提供了許多正確的使用樣本 基本的記憶體管理規則方針
記憶體管理模型是基於對象的所有權。任何對象都可能有一個或者多個所有者,只要一個對象至少還有一個所有者,就讓他繼續存在,如果一個對象沒有所有者,正在啟動並執行系統就會把它自動消滅。為了清楚的確保你是否擁有一個對象,Cocoa制定了以下政策: 你擁有所有你建立的對象你可以通過“alloc”、 “new”、“copy”或者“mutableCopy” (例如alloc、 newObject、 或者 mutableCopy)等方法去建立一個對象 你可以通過“retain”去擷取一個對象的所有權一個被收到的對象通常保證依然有效當他在這個方法內被接收時,這個方法也可以安全的返回調用程式對象。你可以在兩種下使用“retain”:(1)、在一個存取方法的實現方法或者“init”方法時,為了擷取你想要作為一個屬性值去儲存的一個對象的所有權。(2)、為了防止一個對象因為一些其他的操作後果而從此被失效(如用來解釋避免你正在使用的對象重新配置單位) 當你不再需要他的時候,你必須放棄你所擁有的對象的所有權你通過給它發送一個release訊息或者一個autorelease訊息來放棄一個對象的所有權。在Cococa術語中,放棄一個對象的所有權通常稱為“釋放”對象你不能釋放一個不是你所擁有的對象的所有權這僅僅是上述政策規則的必然結果,明確的規定 以上純屬自己翻譯,水平有限,大神如果有好的資源可以分享 

 

Objective-C 記憶體管理原則

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.