Possible memory leak because of Ticker

This commit is contained in:
unknown 2018-11-19 10:57:53 +08:00
parent 711dbdb7a2
commit e7bacd0f12
2 changed files with 4 additions and 0 deletions

View File

@ -62,6 +62,8 @@ type Pool struct {
// clear expired workers periodically. // clear expired workers periodically.
func (p *Pool) periodicallyPurge() { func (p *Pool) periodicallyPurge() {
heartbeat := time.NewTicker(p.expiryDuration) heartbeat := time.NewTicker(p.expiryDuration)
defer heartbeat.Stop()
for range heartbeat.C { for range heartbeat.C {
currentTime := time.Now() currentTime := time.Now()
p.lock.Lock() p.lock.Lock()

View File

@ -63,6 +63,8 @@ type PoolWithFunc struct {
// clear expired workers periodically. // clear expired workers periodically.
func (p *PoolWithFunc) periodicallyPurge() { func (p *PoolWithFunc) periodicallyPurge() {
heartbeat := time.NewTicker(p.expiryDuration) heartbeat := time.NewTicker(p.expiryDuration)
defer heartbeat.Stop()
for range heartbeat.C { for range heartbeat.C {
currentTime := time.Now() currentTime := time.Now()
p.lock.Lock() p.lock.Lock()