diff options
Diffstat (limited to 'src/misc.go')
-rw-r--r-- | src/misc.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/misc.go b/src/misc.go index bbe0d68..b43e97e 100644 --- a/src/misc.go +++ b/src/misc.go @@ -21,6 +21,14 @@ func (a *AtomicBool) Get() bool { return atomic.LoadInt32(&a.flag) == AtomicTrue } +func (a *AtomicBool) Swap(val bool) bool { + flag := AtomicFalse + if val { + flag = AtomicTrue + } + return atomic.SwapInt32(&a.flag, flag) == AtomicTrue +} + func (a *AtomicBool) Set(val bool) { flag := AtomicFalse if val { |