在golang中并行的指针赋值时会因为gc而产生空指针问题吗
对 x 读写 data race 了,go run -race blah.go, race detector 说 data race 了那就是 data race 了不要反抗。data race 行为未定义不要碰运气,下面说的都是针对今天的特定实现的推理。对这个特定的例子,不会有野指针或泄漏问题,也不会 panic. 因为 x 每次赋值都是 zero-value 数据指针为空, y 是先复制了 x 的 zero value(这里复制的确切含义参考 http://research.swtch.com/godata)再修改的,没有写写 data race, 拷过来的保证是 zero value 的话也就没有不一致和漏指针问题。
■网友
1.append的数组,和x不是一个东西,x是指向数组的指针(引用),y也是指针,y在append的时候,append的是y指向的数组。一个是对数组操作一个是对指针操作,当然不冲突。2.gc不会在引用变成0的时候立即gc的
推荐阅读
- 银行的数据中心可以跳槽去互联网公司吗
- 为啥工商银行的用户体验如此之差
- 直播会成为品牌传播的另一个途径么有哪些可行的方法感觉有戏又没头绪好捉急。
- 封面新闻|耀出行:滴滴解决你代步的“温饱”问题,我来满足你出行的仪式感需求
- |中国驻法使馆:法方不谴责虐杀平民反而指责声讨暴行的人
- C语言 指针引用数组的地址问题
- 中兴跳楼,激发了女程序员转行的想法
- 趣头条|可以不用看领克了,东风风行的豪华SUV,配四出排气+三菱引擎
- 有啥有效、可行的提高孩子能力的方法KOOV国际挑战赛上说的STEAM教育真的有用吗
- 中信银行成都分行的信息技术岗(电子银行部),三峡集团下的二级公司长江生态保护集团,怎样选择呢吧友们?
