switch to require 'go controller.Run()'

This commit is contained in:
Daniel Smith
2015-04-07 17:40:30 -07:00
parent 5f7715f0e9
commit 6835318d1e
3 changed files with 6 additions and 5 deletions

View File

@@ -74,8 +74,9 @@ func New(c *Config) *Controller {
// Run begins processing items, and will continue until a value is sent down stopCh. // Run begins processing items, and will continue until a value is sent down stopCh.
// It's an error to call Run more than once. // It's an error to call Run more than once.
// Run does not block. // Run blocks; call via go.
func (c *Controller) Run(stopCh <-chan struct{}) { func (c *Controller) Run(stopCh <-chan struct{}) {
defer util.HandleCrash()
cache.NewReflector( cache.NewReflector(
c.config.ListerWatcher, c.config.ListerWatcher,
c.config.ObjectType, c.config.ObjectType,
@@ -83,7 +84,7 @@ func (c *Controller) Run(stopCh <-chan struct{}) {
c.config.FullResyncPeriod, c.config.FullResyncPeriod,
).RunUntil(stopCh) ).RunUntil(stopCh)
go util.Until(c.processLoop, time.Second, stopCh) util.Until(c.processLoop, time.Second, stopCh)
} }
// processLoop drains the work queue. // processLoop drains the work queue.

View File

@@ -94,7 +94,7 @@ func Example() {
// Create the controller and run it until we close stop. // Create the controller and run it until we close stop.
stop := make(chan struct{}) stop := make(chan struct{})
framework.New(cfg).Run(stop) go framework.New(cfg).Run(stop)
// Let's add a few objects to the source. // Let's add a few objects to the source.
for _, name := range []string{"a-hello", "b-controller", "c-framework"} { for _, name := range []string{"a-hello", "b-controller", "c-framework"} {
@@ -151,7 +151,7 @@ func ExampleInformer() {
// Run the controller and run it until we close stop. // Run the controller and run it until we close stop.
stop := make(chan struct{}) stop := make(chan struct{})
controller.Run(stop) go controller.Run(stop)
// Let's add a few objects to the source. // Let's add a few objects to the source.
for _, name := range []string{"a-hello", "b-controller", "c-framework"} { for _, name := range []string{"a-hello", "b-controller", "c-framework"} {

View File

@@ -164,7 +164,7 @@ func (f *ConfigFactory) CreateFromKeys(predicateKeys, priorityKeys util.StringSe
cache.NewReflector(f.createUnassignedPodLW(), &api.Pod{}, f.PodQueue, 0).RunUntil(f.StopEverything) cache.NewReflector(f.createUnassignedPodLW(), &api.Pod{}, f.PodQueue, 0).RunUntil(f.StopEverything)
// Begin populating scheduled pods. // Begin populating scheduled pods.
f.scheduledPodPopulator.Run(f.StopEverything) go f.scheduledPodPopulator.Run(f.StopEverything)
// Watch minions. // Watch minions.
// Minions may be listed frequently, so provide a local up-to-date cache. // Minions may be listed frequently, so provide a local up-to-date cache.