設計模式-單例模式

單例模式

定義

確保一個類只有一個實例,並提供一個全局訪問點。

角色

1.全局訪問點即全局訪問函數。

2.單例結構體。

例子

var m *single
var once sync.Once
 
//單例結構體
type single struct{
    Name string
}
//全局訪問此結構體實例的函數
func GetInstance()*single{
    once.Do(func() {
        m = &single{}
    })
    return m

總結

單例就是全局一個進程內只能產生一個結構體的實例。注意點是單例產生的實例,訪問實例裏面是數據是線程不安全的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章