Browse Source

fix(worker): fix resource leakage caused by time.Tick(), closing #33

bigeagle 9 years ago
parent
commit
613d46e4e3
1 changed files with 2 additions and 1 deletions
  1. 2 1
      worker/worker.go

+ 2 - 1
worker/worker.go

@@ -291,6 +291,7 @@ func (w *Worker) runSchedule() {
 
 	w.L.Unlock()
 
+	tick := time.Tick(5 * time.Second)
 	for {
 		select {
 		case jobMsg := <-w.managerChan:
@@ -326,7 +327,7 @@ func (w *Worker) runSchedule() {
 				w.schedule.AddJob(schedTime, job)
 			}
 
-		case <-time.Tick(5 * time.Second):
+		case <-tick:
 			// check schedule every 5 seconds
 			if job := w.schedule.Pop(); job != nil {
 				job.ctrlChan <- jobStart