review fixes

This commit is contained in:
Colin Adler 2022-04-14 02:48:40 +00:00
parent c89c1943e4
commit 9590d69297

View File

@ -174,10 +174,7 @@ func (svr *Service) keepControllerWorking() {
reconnectCounts := 1
for {
svr.ctlMu.RLock()
ctlCh := svr.ctl.ClosedDoneCh()
svr.ctlMu.RUnlock()
<-ctlCh
<-svr.ctl.ClosedDoneCh()
if atomic.LoadUint32(&svr.exit) != 0 {
return
}
@ -359,8 +356,8 @@ func (svr *Service) ReloadConf(pxyCfgs map[string]config.ProxyConf, visitorCfgs
svr.visitorCfgs = visitorCfgs
svr.cfgMu.Unlock()
svr.ctlMu.Lock()
defer svr.ctlMu.Unlock()
svr.ctlMu.RLock()
defer svr.ctlMu.RUnlock()
return svr.ctl.ReloadConf(pxyCfgs, visitorCfgs)
}
@ -371,11 +368,11 @@ func (svr *Service) Close() {
func (svr *Service) GracefulClose(d time.Duration) {
atomic.StoreUint32(&svr.exit, 1)
svr.ctlMu.Lock()
svr.ctlMu.RLock()
if svr.ctl != nil {
svr.ctl.GracefulClose(d)
}
svr.ctlMu.Unlock()
svr.ctlMu.RUnlock()
svr.cancel()
}