Go Race Check
Go 语言提供了一些并发调试工具,这些工具可以帮我们有效的发现并发编程中的 bug
1. Go race detector
Go race detector可以帮助我们自动发现程序有没有数据竞争(data race),它是基于 Google 的 C/C++ sanitizers 技术实现的,编译器通过探测所有的内存访问,加入代码能监视对这些内存地址的访问(读还是写)。在代码运行的时候,race detector 就能监控到对共享变量的非同步访问,出现 race 时,就会打印出警告信息。