Unverified Commit b5642bd0 authored by Wesley Liddick's avatar Wesley Liddick Committed by GitHub
Browse files

Merge pull request #1377 from DaydreamCoding/fix/lifecycle-stop-duplicate-close

fix(lifecycle): TokenRefreshService Stop() 防重复 close
parents 128f3222 61607990
...@@ -32,8 +32,9 @@ type TokenRefreshService struct { ...@@ -32,8 +32,9 @@ type TokenRefreshService struct {
privacyClientFactory PrivacyClientFactory privacyClientFactory PrivacyClientFactory
proxyRepo ProxyRepository proxyRepo ProxyRepository
stopCh chan struct{} stopCh chan struct{}
wg sync.WaitGroup stopOnce sync.Once
wg sync.WaitGroup
} }
// NewTokenRefreshService 创建token刷新服务 // NewTokenRefreshService 创建token刷新服务
...@@ -130,7 +131,9 @@ func (s *TokenRefreshService) Start() { ...@@ -130,7 +131,9 @@ func (s *TokenRefreshService) Start() {
// Stop 停止刷新服务(可安全多次调用) // Stop 停止刷新服务(可安全多次调用)
func (s *TokenRefreshService) Stop() { func (s *TokenRefreshService) Stop() {
close(s.stopCh) s.stopOnce.Do(func() {
close(s.stopCh)
})
s.wg.Wait() s.wg.Wait()
slog.Info("token_refresh.service_stopped") slog.Info("token_refresh.service_stopped")
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment