20210304一个"_"可能会造成泄露的小tips - ziyouzy/2021blog GitHub Wiki
如果这样会造成泄露:
var resp *http.Response
for {
_, err = http.Post(url, "", nil)
if err != nil {
fmt.Println(err)
}
time.Sleep(Interval)
}
这是因为http.Post会返回的是一个资源对象,也就是拥有Close()这类方法的对象
于是之前的总结在这里也正好能说明这里的问题,是第三方包的线程泄露了
var resp *http.Response
for {
resp, err = http.Post(url, "", nil)
resp.Body.Close()
if err != nil {
fmt.Println(err)
}
time.Sleep(Interval)
}
这样就可以了