2023-09-01
单例模式
- 单例创建设计模式将类型的实例化限制为单个对象。
package DesignPatterns
import "sync"
type conf struct {
Title string
}
var (
instance conf
one sync.Once
)
func New(title string) conf {
one.Do(func() {
instance.Title = title
})
return instance
}
- 使用
func TestNew(t *testing.T) {
t.Log(New("hello world")) // {hello world}
t.Log(New("hi")) // {hello world}
}