|
@@ -356,6 +356,8 @@ func (svr *Service) ReloadConf(pxyCfgs map[string]config.ProxyConf, visitorCfgs
|
|
|
svr.visitorCfgs = visitorCfgs
|
|
|
svr.cfgMu.Unlock()
|
|
|
|
|
|
+ svr.ctlMu.RLock()
|
|
|
+ defer svr.ctlMu.RUnlock()
|
|
|
return svr.ctl.ReloadConf(pxyCfgs, visitorCfgs)
|
|
|
}
|
|
|
|
|
@@ -365,8 +367,12 @@ func (svr *Service) Close() {
|
|
|
|
|
|
func (svr *Service) GracefulClose(d time.Duration) {
|
|
|
atomic.StoreUint32(&svr.exit, 1)
|
|
|
+
|
|
|
+ svr.ctlMu.RLock()
|
|
|
if svr.ctl != nil {
|
|
|
svr.ctl.GracefulClose(d)
|
|
|
}
|
|
|
+ svr.ctlMu.RUnlock()
|
|
|
+
|
|
|
svr.cancel()
|
|
|
}
|