单例模式

798 阅读1分钟

单例模式属于创建型模式,这里的单例是指进程单例,适用于数据库连接,配置之类的变量创建

type singleton struct {
}

// 懒汉模式
var ins *singleton
var once sync.Once

func GetInsOr() *singleton {
   once.Do(func() {
      ins = &singleton{}
   })
   return ins
}

/*//饿汉模式
var ins *singleton = &singleton{}

func GetInsOr() *singleton {
   return ins
}*/