Version 3 starter

This commit is contained in:
Jamie Curnow
2021-06-14 19:29:35 +10:00
parent 60fc57431a
commit 6205434140
642 changed files with 25817 additions and 32319 deletions

View File

@@ -0,0 +1,31 @@
package state
import (
"sync"
)
// AppState holds pointers to channels and waitGroups
// shared by all goroutines of the application
type AppState struct {
waitGroup sync.WaitGroup
termSig chan bool
}
// NewState ...
func NewState() *AppState {
state := &AppState{
// buffered channel
termSig: make(chan bool, 1),
}
return state
}
// GetWaitGroup ...
func (state *AppState) GetWaitGroup() *sync.WaitGroup {
return &state.waitGroup
}
// GetTermSig ...
func (state *AppState) GetTermSig() chan bool {
return state.termSig
}