乐趣区

关于golang:Go并发编程的数据竞争问题

当两个或更多的操作必须以正确的程序执行时,就会呈现竞争状态,但如果程序没有写入,无奈使操作程序失去放弃。

大多数时候,这呈现在所谓的数据竞争中,其中一个并发操作尝试在某些未确定的工夫读取变量,而另一个并发操作尝试写入同一个变量。
数据竞争的产生条件是最隐秘的并发谬误类型之一,因为它们可能在代码投入生产后才会展示进去。它们通常是由代码执行环境发生变化或前所未有的突发事件引起的。在这些状况下,代码看起来行为正确,但实际上,这些操作按程序执行的呈现不确定性的几率十分高。

参考资料:
并发编程的数据竞争问题以及解决之道
Go 并发的数据竞争

退出移动版