浏览代码

cancel immediately when timeout = 0

Darien Raymond 8 年之前
父节点
当前提交
0aa48e6c5a
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      common/signal/timer.go

+ 5 - 0
common/signal/timer.go

@@ -39,6 +39,11 @@ func (t *ActivityTimer) run() {
 		case <-t.ctx.Done():
 			return
 		case timeout := <-t.timeout:
+			if timeout == 0 {
+				t.cancel()
+				return
+			}
+
 			ticker.Stop()
 			ticker = time.NewTicker(timeout)
 		}