mirror of
https://github.com/diamondburned/arikawa.git
synced 2024-11-19 13:22:54 +00:00
17 lines
235 B
Go
17 lines
235 B
Go
|
package moreatomic
|
||
|
|
||
|
import "sync/atomic"
|
||
|
|
||
|
type Serial struct {
|
||
|
serial uint32
|
||
|
}
|
||
|
|
||
|
func (s *Serial) Get() int {
|
||
|
return int(atomic.LoadUint32(&s.serial))
|
||
|
}
|
||
|
|
||
|
func (s *Serial) Incr() int {
|
||
|
atomic.AddUint32(&s.serial, 1)
|
||
|
return s.Get()
|
||
|
}
|