mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
Merge pull request #15130 from guozhao-coder/replace-timeAfter
etcdserver: use time.Ticker instead of time.After
This commit is contained in:
commit
756875151f
@ -2206,6 +2206,8 @@ func (s *EtcdServer) monitorKVHash() {
|
||||
if t == 0 {
|
||||
return
|
||||
}
|
||||
checkTicker := time.NewTicker(t)
|
||||
defer checkTicker.Stop()
|
||||
|
||||
lg := s.Logger()
|
||||
lg.Info(
|
||||
@ -2217,7 +2219,7 @@ func (s *EtcdServer) monitorKVHash() {
|
||||
select {
|
||||
case <-s.stopping:
|
||||
return
|
||||
case <-time.After(t):
|
||||
case <-checkTicker.C:
|
||||
}
|
||||
if !s.isLeader() {
|
||||
continue
|
||||
|
@ -607,12 +607,15 @@ func (le *lessor) Stop() {
|
||||
func (le *lessor) runLoop() {
|
||||
defer close(le.doneC)
|
||||
|
||||
delayTicker := time.NewTicker(500 * time.Millisecond)
|
||||
defer delayTicker.Stop()
|
||||
|
||||
for {
|
||||
le.revokeExpiredLeases()
|
||||
le.checkpointScheduledLeases()
|
||||
|
||||
select {
|
||||
case <-time.After(500 * time.Millisecond):
|
||||
case <-delayTicker.C:
|
||||
case <-le.stopC:
|
||||
return
|
||||
}
|
||||
|
@ -211,6 +211,10 @@ func (s *watchableStore) Restore(b backend.Backend) error {
|
||||
func (s *watchableStore) syncWatchersLoop() {
|
||||
defer s.wg.Done()
|
||||
|
||||
waitDuration := 100 * time.Millisecond
|
||||
delayTicker := time.NewTicker(waitDuration)
|
||||
defer delayTicker.Stop()
|
||||
|
||||
for {
|
||||
s.mu.RLock()
|
||||
st := time.Now()
|
||||
@ -223,15 +227,15 @@ func (s *watchableStore) syncWatchersLoop() {
|
||||
}
|
||||
syncDuration := time.Since(st)
|
||||
|
||||
waitDuration := 100 * time.Millisecond
|
||||
delayTicker.Reset(waitDuration)
|
||||
// more work pending?
|
||||
if unsyncedWatchers != 0 && lastUnsyncedWatchers > unsyncedWatchers {
|
||||
// be fair to other store operations by yielding time taken
|
||||
waitDuration = syncDuration
|
||||
delayTicker.Reset(syncDuration)
|
||||
}
|
||||
|
||||
select {
|
||||
case <-time.After(waitDuration):
|
||||
case <-delayTicker.C:
|
||||
case <-s.stopc:
|
||||
return
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user