1
0
Fork 0
mirror of https://git.sr.ht/~ashkeel/strimertul synced 2024-09-20 02:00:49 +00:00
strimertul/modules/http/safebool.go

26 lines
347 B
Go
Raw Normal View History

package http
import "sync"
type SafeBool struct {
val bool
2022-02-09 14:16:47 +00:00
mux sync.RWMutex
}
func newSafeBool(val bool) *SafeBool {
2022-02-09 14:16:47 +00:00
return &SafeBool{val: val, mux: sync.RWMutex{}}
}
func (s *SafeBool) Set(val bool) {
s.mux.Lock()
s.val = val
s.mux.Unlock()
}
func (s *SafeBool) Get() bool {
2022-02-09 14:16:47 +00:00
s.mux.RLock()
val := s.val
2022-02-09 14:16:47 +00:00
s.mux.RUnlock()
return val
}