WebUI/src/util/counter.go
Theta-Dev 60034b4815
All checks were successful
continuous-integration/drone/push Build is passing
add server base
2022-02-01 23:08:45 +01:00

30 lines
371 B
Go

package util
import "sync"
type Counter struct {
count uint
mutex sync.RWMutex
}
func (c *Counter) Get() uint {
c.mutex.RLock()
defer c.mutex.RUnlock()
return c.count
}
func (c *Counter) Reset() {
c.mutex.Lock()
defer c.mutex.Unlock()
c.count = 0
}
func (c *Counter) Increment() uint {
c.mutex.Lock()
defer c.mutex.Unlock()
c.count++
return c.count
}