Don't leak tickers in the exec probe

This commit is contained in:
Prashanth Balasubramanian 2015-07-05 17:03:10 -07:00
parent bb6f2f7ad9
commit 33e2f7cb8b
2 changed files with 6 additions and 4 deletions

View File

@ -123,7 +123,8 @@ func (*NativeExecHandler) ExecInContainer(client DockerInterface, container *doc
if err != nil { if err != nil {
return err return err
} }
tick := time.Tick(2 * time.Second) ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()
count := 0 count := 0
for { for {
inspect, err2 := client.InspectExec(execObj.ID) inspect, err2 := client.InspectExec(execObj.ID)
@ -143,7 +144,7 @@ func (*NativeExecHandler) ExecInContainer(client DockerInterface, container *doc
break break
} }
<-tick <-ticker.C
} }
return err return err

View File

@ -945,7 +945,8 @@ func (dm *DockerManager) RunInContainer(containerID string, cmd []string) ([]byt
glog.V(2).Infof("StartExec With error: %v", err) glog.V(2).Infof("StartExec With error: %v", err)
return nil, err return nil, err
} }
tick := time.Tick(2 * time.Second) ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()
for { for {
inspect, err2 := dm.client.InspectExec(execObj.ID) inspect, err2 := dm.client.InspectExec(execObj.ID)
if err2 != nil { if err2 != nil {
@ -959,7 +960,7 @@ func (dm *DockerManager) RunInContainer(containerID string, cmd []string) ([]byt
} }
break break
} }
<-tick <-ticker.C
} }
return buf.Bytes(), err return buf.Bytes(), err