etcdclient: Fix memory leak caused by for + time.After

Signed-off-by: silves-xiang <xiang20010326@sina.com>
This commit is contained in:
silves-xiang 2023-12-14 10:05:51 +08:00
parent dfdffe48f9
commit ed01ee1e5e

View File

@ -549,9 +549,12 @@ func (l *lessor) recvKeepAlive(resp *pb.LeaseKeepAliveResponse) {
// deadlineLoop reaps any keep alive channels that have not received a response
// within the lease TTL
func (l *lessor) deadlineLoop() {
timer := time.NewTimer(time.Second)
defer timer.Stop()
for {
timer.Reset(time.Second)
select {
case <-time.After(time.Second):
case <-timer.C:
case <-l.donec:
return
}