diff --git a/design/singleton/go_single.go b/design/singleton/go_single.go index f580a2e..4209c97 100644 --- a/design/singleton/go_single.go +++ b/design/singleton/go_single.go @@ -2,18 +2,15 @@ package singleton import "sync" -type singleton struct{} - var ( goInstance *Instance - ins *singleton once sync.Once ) // 使用go 实现单例模式 -func GetIns() *singleton { +func GoInstance(name string) *Instance { once.Do(func() { - ins = &singleton{} + goInstance = &Instance{Name: name} }) - return ins + return goInstance }