中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于內存方面,retain,copy,assign

發布時間:2020-07-31 19:11:25 來源:網絡 閱讀:530 作者:lulun426 欄目:開發技術

 

內存管理機制

 引用計數:因為OC中不存在垃圾回收機制,所以才根據引用計數回收機制。當引用計數為0時,銷毀空間。也就是說,根據引用計數來確定一個對象是否釋放

  可以改變引用計數的操作:allco retain release copy dealloc 

 便利構造器

自動釋放池:

 每次對象調用autorelease 方法時(obj-c中的正式說法應該是:給對象發送autorelease消息),對象的引用計數并不是真正變化,而是向pool中添加一條記錄,記下對象的這種要求。最后當pool發送drain 或者 release 消息時,池中的所有對象的這種要求一一被執行(即:pool被銷毀前,會通知池中的所有對象,全部發送release 消息真正將引用計數減少,如果對象之前沒有發送過autorelease 消息)

   retain:引用計數+1 操作,獲取對象的所有權,與release 對應。

   線程:注意當視圖退出時,需要關閉自己所開線程


   alloc : 開辟空間,引用計數有0變為1,dealloc :銷毀空間 手動調用dealloc 時候會強制將引用計數置為0;

   copy:將源數據重新復制一份,原數據引用計數不變,拷貝的一份引用計數+1;復制一個對象,并且存儲在不同的內存區,原對象的引用計數不變。遵循NSCoping 協議的可以深拷貝。

   assign :×××或者其他常量的引用計數。不發生改變

   在ARC模式下,strong 與retain相似,strong,用于ARC模式下,表明對象屬于強引用,類似retain ,但是比retain更加安全,只要對象存在擁有者,就可以引用,不會被釋放,只要對象失去擁有者,立即被拋棄,不必再將已經指向已經釋放的對象的指針指向空。避免了野指針。

    weak 類似assign ,弱引用,引用計數不會增加。釋放指針自動置為nil

   在ARC模式下,weak 與 assign 相似,

    readwrite:讀寫,既有setter 和 getter 

    readonly:只有讀操作,即只有getter

    nonatomic :非原子特性,不保證多線程下保護安全

    atomic:原子特性,保證多線程下安全,有一個屬性需要對個線程同時訪問一個變量,使用atomic 能夠自動枷鎖解鎖。

     

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

常德市| 蒙阴县| 子洲县| 沾益县| 京山县| 尼勒克县| 蚌埠市| 仁怀市| 聂荣县| 静海县| 黄浦区| 亳州市| 凉城县| 新宾| 连州市| 龙游县| 萨嘎县| 全州县| 曲周县| 岳阳县| 连南| 文水县| 修文县| 达孜县| 黔东| 延寿县| 宜城市| 新津县| 榕江县| 滦南县| 博客| 安平县| 南汇区| 阿坝| 西盟| 甘泉县| 同德县| 紫金县| 富宁县| 谷城县| 交口县|