Explorar el Código

clientv3: register waitCancelSubstreams closingc goroutine with waitgroup

Fixes #7598
Anthony Romano hace 9 años
padre
commit
aab2eda7df
Se han modificado 1 ficheros con 5 adiciones y 1 borrados
  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])