code: func (jm *JobController) Run(workers int, stopCh <-chan struct{}) {
  	defer utilruntime.HandleCrash()
  	defer jm.queue.ShutDown()
  
  	klog.Infof("Starting job controller")
  	defer klog.Infof("Shutting down job controller")
  
  	if !controller.WaitForCacheSync("job", stopCh, jm.podStoreSynced, jm.jobStoreSynced) {
  		return
  	}
  
  	for i := 0; i < workers; i++ {
  		go wait.Until(jm.worker, time.Second, stopCh)
  	}
  
  	<-stopCh
  }
docs: // Run the main goroutine responsible for watching and syncing jobs.