请教大家一个问题,两个单测
这个keep alive是生效的
```
func BenchmarkNetHTTPClientBase2(b *testing.B) {
client := http.Client{Transport: http.DefaultTransport}
for i := 0; i < b.N; i++ {
pingReq, _ := http.NewRequestWithContext(context.Background(), "GET", "http://127.0.0.1:7777/ping", nil)
pingRes, err := client.Do(pingReq)
if err != nil {
b.Error(err)
} else {
_, err = ioutil.ReadAll(pingRes.Body)
if err != nil {
b.Error(err)
}
pingRes.Body.Close()
}
}
}
```
但是下面这个keep alive就不生效了
```
func BenchmarkNetHTTPClientBase1(b *testing.B) {
client := http.Client{Transport: http.DefaultTransport}
b.RunParallel(func(pb *testing.PB) {
for pb.Next() {
pingReq, _ := http.NewRequestWithContext(context.Background(), "GET", "http://127.0.0.1:7777/ping", nil)
pingRes, err := client.Do(pingReq)
if err != nil {
b.Error(err)
} else {
_, err = ioutil.ReadAll(pingRes.Body)
if err != nil {
b.Error(err)
}
pingRes.Body.Close()
}
}
})
}
```
请问是什么原因呢?谢谢
有疑问加站长微信联系(非本文作者)