-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Open
Description
如下代码验证了空结构体多次赋值结果一样,在单例模式中golang-design-pattern/03_singleton/singleton.go line23,即使不用sync.Once 也能通过单元测试,应该给singleton添加一个字段
`package main
import (
"fmt"
)
var a1 *singleton1
var a2 *singleton2
type singleton1 struct {
}
type singleton2 struct {
d int
}
func getInstance1() *singleton1 {
a1 = &singleton1{}
return a1
}
func getInstance2() *singleton2 {
a2 = &singleton2{}
return a2
}
func main() {
b1, c1 := getInstance1(), getInstance1()
fmt.Println(b1 == c1)
//true
b2, c2 := getInstance2(), getInstance2()
fmt.Println(b2 == c2)
//false
}
`
Metadata
Metadata
Assignees
Labels
No labels