code: func (m *Manager) Run(tsets <-chan map[string][]*targetgroup.Group) error {
  	go m.reloader()
  	for {
  		select {
  		case ts := <-tsets:
  			m.updateTsets(ts)
  
  			select {
  			case m.triggerReload <- struct{}{}:
  			default:
  			}
  
  		case <-m.graceShut:
  			return nil
  		}
  	}
  }
docs: // Run receives and saves target set updates and triggers the scraping loops reloading.
  // Reloading happens in the background so that it doesn't block receiving targets updates.