| 12345678910111213141516171819202122232425 |
- package initutils
- import (
- "sync"
- )
- var asyncInitWaitGroup sync.WaitGroup
- func AsyncInitAdd() { asyncInitWaitGroup.Add(1) }
- func AsyncInitDone() { asyncInitWaitGroup.Done() }
- func AsyncInitWait() { asyncInitWaitGroup.Wait() }
- // defer initutils.AsyncInitAddDone()()
- func AsyncInitAddDone() func() {
- asyncInitWaitGroup.Add(1)
- return func() {
- asyncInitWaitGroup.Done()
- }
- }
- func AsyncInit(f func()) {
- asyncInitWaitGroup.Add(1)
- defer asyncInitWaitGroup.Done()
- f()
- }
|