Procházet zdrojové kódy

clientv3: register waitCancelSubstreams closingc goroutine with waitgroup

Fixes #7598
Anthony Romano před 9 roky
rodič
revize
aab2eda7df
1 změnil soubory, kde provedl 5 přidání a 1 odebrání
  1. 5 1
      clientv3/watch.go

+ 5 - 1
clientv3/watch.go

@@ -711,7 +711,11 @@ func (w *watchGrpcStream) waitCancelSubstreams(stopc <-chan struct{}) <-chan str
 				ws.closing = true
 				close(ws.outc)
 				ws.outc = nil
-				go func() { w.closingc <- ws }()
+				w.wg.Add(1)
+				go func() {
+					defer w.wg.Done()
+					w.closingc <- ws
+				}()
 			case <-stopc:
 			}
 		}(w.resuming[i])