code: func OpenFile(name string, flag int, perm os.FileMode) (file *os.File, mustClose bool, err error) {
  	file, err = os.OpenFile(name, flag, perm)
  	fileMu.RLock()
  	defer fileMu.RUnlock()
  	if newCount := atomic.AddUint64(&fileCount, 1); newCount > maxFileCount {
  		mustClose = true
  	}
  	return file, mustClose, err
  }
docs: // OpenFile passes the arguments along to os.OpenFile while incrementing a
  // counter. If the counter is above the maximum, it returns mustClose true to
  // signal the calling function that it should not keep the file open
  // indefinitely. Files opened with this function should be closed by
  // syswrap.CloseFile.