问题遇到的现象和发生背景
我想确认一下下列代码是否会有问题
问题相关代码,请勿粘贴截图
type bb struct {
a int
b string
}
func a1() {
aa :=[]bb{{a: 0,b: "b0",},{a:1,b:"b1"},{a:2,b:"b2"},{a:3,b:"b3"},{a:4,b:"b4"}}
for i := 0; i < 5; i++ {
go func(wz int) {
aa[wz].b="完毕"+strconv.Itoa(wz)
}(i)
}
time.Sleep(time.Millisecond*5000)
fmt.Printf("最终结果%+v",aa)
}
运行结果及报错内容
最终结果符合预期
我的解答思路和尝试过的方法
目前看来结果达到我的预期
我想要达到的结果
因为项目中我不想用chan来通讯所以想用上述带的思路.
我想知道在实际项目中这样用是否会有问题,实际中bb struct结构体比较复杂