【发布时间】:2017-04-15 09:00:06
【问题描述】:
我不确定为什么下面的代码有竞争条件,有人可以给我提示吗?我认为没有潜在的竞争条件。先感谢您。
type PossiblySafeCounter struct {
mu sync.Mutex
sum int
}
func (c *PossiblySafeCounter) inc() {
c.mu.Lock();
defer c.mu.Unlock();
go func() {
c.sum++
}()
}
func (c *PossiblySafeCounter) read() int {
c.mu.Lock();
defer c.mu.Unlock();
return c.sum
}
【问题讨论】:
-
你为什么认为有一个?
标签: go