go 并发 安全 测试

func main() {
    // runtime.GOMAXPROCS(1)
    n := 0
    for i := 0; i < 1000; i++ {
        go func() {
            n++
        }()
    }
    time.Sleep(time.Duration(1) * time.Second)
    fmt.Println(n)
}

输出结果总不是1000

如果设置GOMAXPROCS,同一时间只启用一个cpu,那么就会是1000

相关文章

此处评论已关闭