Jelajahi Sumber

close main connection quicker

Darien Raymond 8 tahun lalu
induk
melakukan
7682929c11
1 mengubah file dengan 6 tambahan dan 0 penghapusan
  1. 6 0
      app/proxyman/mux/mux.go

+ 6 - 0
app/proxyman/mux/mux.go

@@ -168,6 +168,9 @@ func (m *Client) monitor() {
 		case id := <-m.session2Remove:
 			m.access.Lock()
 			delete(m.sessions, id)
+			if len(m.sessions) == 0 {
+				m.cancel()
+			}
 			m.access.Unlock()
 		}
 	}
@@ -177,6 +180,9 @@ func (m *Client) cleanup() {
 	m.access.Lock()
 	defer m.access.Unlock()
 
+	m.inboundRay.InboundInput().Close()
+	m.inboundRay.InboundOutput().CloseError()
+
 	for _, s := range m.sessions {
 		s.closeUplink()
 		s.closeDownlink()