code: func (q *TimedWorkerQueue) AddWork(args *WorkArgs, createdAt time.Time, fireAt time.Time) {
  	key := args.KeyFromWorkArgs()
  	klog.V(4).Infof("Adding TimedWorkerQueue item %v at %v to be fired at %v", key, createdAt, fireAt)
  
  	q.Lock()
  	defer q.Unlock()
  	if _, exists := q.workers[key]; exists {
  		klog.Warningf("Trying to add already existing work for %+v. Skipping.", args)
  		return
  	}
  	worker := CreateWorker(args, createdAt, fireAt, q.getWrappedWorkerFunc(key))
  	q.workers[key] = worker
  }
docs: // AddWork adds a work to the WorkerQueue which will be executed not earlier than `fireAt`.