code: func (e *TokensController) retryOrForget(queue workqueue.RateLimitingInterface, key interface{}, requeue bool) {
  	if !requeue {
  		queue.Forget(key)
  		return
  	}
  
  	requeueCount := queue.NumRequeues(key)
  	if requeueCount < e.maxRetries {
  		queue.AddRateLimited(key)
  		return
  	}
  
  	klog.V(4).Infof("retried %d times: %#v", requeueCount, key)
  	queue.Forget(key)
  }
docs: // complete optionally requeues key, then calls queue.Done(key)