mirror of
https://github.com/Estom/notes.git
synced 2026-04-04 11:27:59 +08:00
go知识重新整理
This commit is contained in:
24
Go/DesignPattern/single/single.go
Normal file
24
Go/DesignPattern/single/single.go
Normal file
@@ -0,0 +1,24 @@
|
||||
/**
|
||||
* @Author:zhoutao
|
||||
* @Date:2020/12/12 下午4:14
|
||||
* @Desc:
|
||||
*/
|
||||
|
||||
package single
|
||||
|
||||
import "sync"
|
||||
|
||||
//单例模式:使用懒惰模式的单例模式,使用双重检查加锁保证线程安全
|
||||
|
||||
type Singleton struct {
|
||||
}
|
||||
|
||||
var singelton *Singleton
|
||||
var once sync.Once
|
||||
|
||||
func GetInstance() *Singleton {
|
||||
once.Do(func() {
|
||||
singelton = &Singleton{}
|
||||
})
|
||||
return singelton
|
||||
}
|
||||
Reference in New Issue
Block a user