func main() {
fmt.Println(getNumber())
}

func getNumber() int {
var i int
go func() {
i = 5
}()

return i
}

检查竟态
Go(从v1.1开始)具有内置的数据竞争检测器,可以使用它来查明潜在的数据竞争条件。

使用它就像-race在普通的Go命令行工具中添加标志一样简单。

运行时检查竟态的命令:​​go run -race main.go​​​ 构建时检查竟态的命令:​​go build -race main.go​​ 测试时检查竟态的命令:​​go test -race main.go​