思路
使用Chan加锁
同步信道bool类型 容量为1 开启多个协程
func myLock() {
chanLock := make(chan bool, 1)
var x int
for i := 0; i < 5000; i++ {
go chanWithLock(chanLock, &x)
}
time.Sleep(time.Second)
fmt.Println(x)
}
func chanWithLock(mychan chan bool, x *int) {
// 同步阻塞通道 数据写入
mychan <- true
*x = *x + 1
// 通道通畅数据读取
<-mychan
}



