From 1a0ee4cda25a94644ef23c1228877ac4806de4b8 Mon Sep 17 00:00:00 2001 From: Mikhail Mazurskiy Date: Wed, 7 Jun 2017 09:44:16 +1000 Subject: [PATCH] Refactor Start functions into an object Kubernetes-commit: 6464774a9b94f6e8376e11d015fd55e98457e74c --- tools/cache/controller.go | 4 ++-- tools/cache/shared_informer.go | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tools/cache/controller.go b/tools/cache/controller.go index b8bbf523..e7b98bef 100644 --- a/tools/cache/controller.go +++ b/tools/cache/controller.go @@ -116,10 +116,10 @@ func (c *controller) Run(stopCh <-chan struct{}) { c.reflector = r c.reflectorMutex.Unlock() - var wg sync.WaitGroup + var wg wait.Group defer wg.Wait() - wait.StartWithChannelWithinGroup(stopCh, &wg, r.Run) + wg.StartWithChannel(stopCh, r.Run) wait.Until(c.processLoop, time.Second, stopCh) } diff --git a/tools/cache/shared_informer.go b/tools/cache/shared_informer.go index e9851678..62009646 100644 --- a/tools/cache/shared_informer.go +++ b/tools/cache/shared_informer.go @@ -147,7 +147,7 @@ type sharedIndexInformer struct { // stopCh is the channel used to stop the main Run process. We have to track it so that // late joiners can have a proper stop stopCh <-chan struct{} - wg sync.WaitGroup + wg wait.Group } // dummyController hides the fact that a SharedInformer is different from a dedicated one @@ -211,8 +211,8 @@ func (s *sharedIndexInformer) Run(stopCh <-chan struct{}) { defer s.wg.Wait() - wait.StartWithChannelWithinGroup(stopCh, &s.wg, s.cacheMutationDetector.Run) - wait.StartWithChannelWithinGroup(stopCh, &s.wg, s.processor.run) + s.wg.StartWithChannel(stopCh, s.cacheMutationDetector.Run) + s.wg.StartWithChannel(stopCh, s.processor.run) s.controller.Run(stopCh) } @@ -327,8 +327,8 @@ func (s *sharedIndexInformer) AddEventHandlerWithResyncPeriod(handler ResourceEv s.processor.addListener(listener) - wait.StartWithChannelWithinGroup(s.stopCh, &s.wg, listener.run) - wait.StartWithChannelWithinGroup(s.stopCh, &s.wg, listener.pop) + s.wg.StartWithChannel(s.stopCh, listener.run) + s.wg.StartWithChannel(s.stopCh, listener.pop) items := s.indexer.List() for i := range items { @@ -398,13 +398,13 @@ func (p *sharedProcessor) distribute(obj interface{}, sync bool) { } func (p *sharedProcessor) run(stopCh <-chan struct{}) { - var wg sync.WaitGroup + var wg wait.Group func() { p.listenersLock.RLock() defer p.listenersLock.RUnlock() for _, listener := range p.listeners { - wait.StartWithChannelWithinGroup(stopCh, &wg, listener.run) - wait.StartWithChannelWithinGroup(stopCh, &wg, listener.pop) + wg.StartWithChannel(stopCh, listener.run) + wg.StartWithChannel(stopCh, listener.pop) } }() wg.Wait()