單列里面添加 NSMutableArray 的時候旦事,防止多個地方對它同時便利和修改的話么翰,需要加原子屬性。并且用strong暴心,并且寫一個遍歷和修改的方法妓盲。加上鎖。? Lock? UnLock
第一酷勺、基本概念
單例模式是一種常用的軟件設(shè)計模式本橙。在它的核心結(jié)構(gòu)中只包含一個被稱為單例類的特殊類扳躬。通過單例模式可以保證系統(tǒng)中一個類只有一個實例而且該實例易于外界訪問脆诉。
第二、在IOS中使用單例模式的情況
1.如果說創(chuàng)建一個對象會耗費很多系統(tǒng)資源贷币,那么此時采用單例模式击胜,因為只需要一個實例,會節(jié)省alloc的時間
2.在IOS開發(fā)中役纹,如果很多模塊都要使用同一個變量偶摔,此時如果把該變量放入單例類,則所有訪問該變量的調(diào)用變得很容易促脉,否則辰斋,只能通過一個模塊傳遞給另外一個模塊,這樣增加了風險和復雜度
第三瘸味、創(chuàng)建單例模式的基本步驟
1.聲明一個單例對象的靜態(tài)實例宫仗,并初始化為nil
2.聲明一個類的工廠方法,生成一個該類的實例旁仿,并且只會生成一個
3.覆蓋allcoWithZone方法藕夫,確保用戶在alloc 時,不會產(chǎn)生一個多余的對象
4.實現(xiàn)NSCopying協(xié)議,覆蓋release,autorelease,retain,retainCount方法毅贮,以確保只有一個實例化對象
5.在多線程的環(huán)境中办悟,注意使用@synchronized關(guān)鍵字