【发布时间】:2021-04-28 11:40:26
【问题描述】:
指针值有一个机器字的长度,所以读/写操作自然应该是原子的。只要我们不改变指针指向的东西,我们是否可以只使用指向结构的指针并同时访问它?
type A struct{
x int
y int
z int
}
var v *A
func main(){
v = &A{}
go func(){
u := v
fmt.Print(u.x)
fmt.Print(u.y)
fmt.Print(u.z)
//will it only print 000 or 111?
}()
go func(){
u := &A{x:1, y:1, z:1}
v = u
}()
}
【问题讨论】:
标签: go