avoid running session close under lock

This commit is contained in:
Jay
2026-05-17 15:39:24 -04:00
parent b09281b5d4
commit b4c36e40f0
+8 -3
View File
@@ -205,11 +205,16 @@ func (m *RequestManager) Close() {
m.cancel() m.cancel()
m.wg.Wait() m.wg.Wait()
m.mu.Lock() m.mu.RLock()
for _, sess := range m.sessions { sessions := make(map[string]*session)
for id, s := range m.sessions {
sessions[id] = s
}
m.mu.RUnlock()
for _, sess := range sessions {
sess.Close() sess.Close()
} }
m.mu.Unlock()
m.sessionWg.Wait() m.sessionWg.Wait()