go routine同时对同一个结构的不同字段赋值会不会出问题,
大概像这样
```go
type AA struct {
A int
B int
}
a:=AA{}
go func() {
a.A=1
}()
go func() {
a.B=2
}()
```
Go语言大佬Ross Cox的原话:“Don't communicate by sharing memory; Share memory by communicating."
在你的这里例子来看,不同的goroutine访问同一变量需要加锁。不过不推荐加锁,原因是影响性能。
#4
更多评论