You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

25 lines
391 B

package server
import "sync"
type ConnectionManager struct {
*sync.WaitGroup
Counter int
}
func NewConnectionManager() *ConnectionManager {
cm := &ConnectionManager{}
cm.WaitGroup = &sync.WaitGroup{}
return cm
}
func (cm *ConnectionManager) Add(delta int) {
cm.Counter += delta
cm.WaitGroup.Add(delta)
}
func (cm *ConnectionManager) Done() {
cm.Counter--
cm.WaitGroup.Done()
}