單例模式文章
懶漢式單例模式
之所以稱(chēng)之為懶漢,是因?yàn)樗辉诔绦虻谝淮握{(diào)用的時(shí)候才將實(shí)例創(chuàng)建出來(lái)。
懶漢長(zhǎng)啥樣?餓漢長(zhǎng)啥樣?懶漢為什么會(huì)線(xiàn)程不安全?代碼實(shí)現(xiàn)一下。餓漢又為什么線(xiàn)程安全?為什么加一個(gè)鎖會(huì)影響性能?為什么雙重鎖是最好的解決方案?
餓漢式單例模式
作為一個(gè)餓漢,當(dāng)然要表現(xiàn)得比較著急,這樣才有人給他吃的。它主動(dòng)就把實(shí)例在定義時(shí)初始化好,以等著別人來(lái)用。
餓漢和懶漢兩種模式的優(yōu)劣
餓漢自己被加載是就實(shí)例化,沒(méi)有多線(xiàn)程訪(fǎng)問(wèn)的安全問(wèn)題。懶漢式有多線(xiàn)程訪(fǎng)問(wèn)安全的問(wèn)題。
多線(xiàn)程下的單例模式
一個(gè)鎖? 雙重鎖
相關(guān)資料
單例模式中唯一實(shí)例為什么要用靜態(tài)?
之后想要做的事情 設(shè)計(jì)模式 靜態(tài)變量 多線(xiàn)程確保線(xiàn)程安全的幾種方法 如何保證線(xiàn)程安全 c++中內(nèi)存操作
設(shè)計(jì)模式
UML類(lèi)圖和時(shí)序圖
創(chuàng)建型模式
結(jié)構(gòu)性模式
行為型模式