日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

设计模式-----单例模式优缺点及使用场景

發布時間:2025/3/19 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 设计模式-----单例模式优缺点及使用场景 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是單例模式?

? ? ? ? 單例模式就是保證系統中一個類只有一個實例。也就是說只能自己new自己并且實例唯一并對外提供

2、模式的作用及應用場景?

? ? ? 作用:解決一個全局使用的類,頻繁創建和銷毀。擁有對象的唯一性,并保證內存中對象的唯一。可以節省內存,因為單例共用一個實例,有利于Java的垃圾回收機制。

????????????????也就是控制資源使用,通過線程同步來控制資源的并發訪問;

????????????????控制實例產生的數量,達到節約資源的目的;

????? 應用場景舉例:

???????????????????????????1、統計當前在線人數(網站計數器):用一個全局對象來記錄。

????????????????????????? ?2、打印機(設備管理器):當有兩臺打印機,在輸出同一個文件的時候只一臺打印機進行輸出

??????????????????????????3、數據庫連接池(控制資源):一般是采用單例模式,因為數據庫連接是一種連接數據庫資源,不易頻繁創建和銷毀。

?????????????????????????數據庫軟件系統中使用數據庫連接池,主要是節省打開或者關閉數據庫連接所引起的效率損耗,這種效率? ??????????????的損耗還是非常昂貴的,因此用單例模式來維護,就可以大大降低這種損耗。

????????????????????????? 4、應用程序的日志(資源共享):一般日志內容是共享操作,需要在后面不斷寫入內容所以通常單例設計。

3、單例模式的優缺點

????????? ? 優點:1、減少內存開銷,尤其是頻繁的創建和銷毀實例

?????????????????????2、避免對資源對過多占用。

????????? ? 缺點:1、沒有抽象層,不能繼承擴展很難。

????????????????? ? ?2、違背了“單一職責原則”,一個類只重視內部關系,而忽略外部關系。

?????????????????????3、不適用于變化對象。

?????????????????????4、濫用單例會出現一些負面問題,如為節省資源將數據庫連接池對象設計為單例,可能會導致共享連接池對象對程序過多而出現連接池溢出。如果實例化的對象長時間不被利用,系統會認為是垃圾而被回收,這樣將導致對象狀態丟失。




與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的设计模式-----单例模式优缺点及使用场景的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。