mirror of https://github.com/grpc/grpc-go.git
Wait until all rpcs are done instead of a hard stop.
This commit is contained in:
parent
97b8c7c529
commit
dd6905b8b2
|
|
@ -225,8 +225,6 @@ func performRPCs(gauge *gauge, conn *grpc.ClientConn, selector *weightedRandomTe
|
||||||
var numCalls int64
|
var numCalls int64
|
||||||
startTime := time.Now()
|
startTime := time.Now()
|
||||||
for {
|
for {
|
||||||
done := make(chan bool, 1)
|
|
||||||
go func() {
|
|
||||||
test := selector.getNextTest()
|
test := selector.getNextTest()
|
||||||
switch test {
|
switch test {
|
||||||
case "empty_unary":
|
case "empty_unary":
|
||||||
|
|
@ -252,14 +250,13 @@ func performRPCs(gauge *gauge, conn *grpc.ClientConn, selector *weightedRandomTe
|
||||||
case "custom_metadata":
|
case "custom_metadata":
|
||||||
interop.DoCustomMetadata(client, grpc.FailFast(false))
|
interop.DoCustomMetadata(client, grpc.FailFast(false))
|
||||||
}
|
}
|
||||||
done <- true
|
numCalls++
|
||||||
}()
|
gauge.set(int64(float64(numCalls) / time.Since(startTime).Seconds()))
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case <-stop:
|
case <-stop:
|
||||||
return
|
return
|
||||||
case <-done:
|
default:
|
||||||
numCalls++
|
|
||||||
gauge.set(int64(float64(numCalls) / time.Since(startTime).Seconds()))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue