← Каталог
Важные интерфейсы и типы Go — 4.1. `sync.Mutex` и `sync.RWMutex`
Фрагмент из «Важные интерфейсы и типы Go»: 4.1. `sync.Mutex` и `sync.RWMutex`.
type Counter struct {
mu sync.Mutex
value int
}
func (c *Counter) Inc() {
c.mu.Lock()
defer c.mu.Unlock()
c.value++
}
func (c *Counter) Get() int {
c.mu.Lock()
defer c.mu.Unlock()
return c.value
} type Counter struct {
mu sync.Mutex
value int
}
func (c *Counter) Inc() {
c.mu.Lock()
defer c.mu.Unlock()
c.value++
}
func (c *Counter) Get() int {
c.mu.Lock()
defer c.mu.Unlock()
return c.value
}