code: func (rc *refCounter) Dereference(fileName string) error {
  	rc.mu.Lock()
  	defer rc.mu.Unlock()
  
  	rc.counter[fileName]--
  	if rc.counter[fileName] <= 0 {
  		delete(rc.counter, fileName)
  		err := os.Remove(fileName)
  		if err != nil {
  			return err
  		}
  	}
  	return nil
  }
docs: // Dereference reduce the reference counter for specified logfile