Есть ли альтернатива fsync для windows? (C ++ Builder)
Fsync должен включать unistd.h, и это только для систем Unix
Спасибо!
С man-страницы:
fflush () вызывает запись всего пользовательского пространства
буферизованные данные для данного потока вывода или обновления через поток
основная функция записи.
Упомянутая функция записи сообщает операционной системе, каким должно быть содержимое файла. На этом этапе все изменения будут храниться в кэш-памяти файловой системы, прежде чем они будут записаны на диск.
Функция POSIX fsync()
говорит операционной системе синхронизировать все изменения из ее кэшей на диск. Как уже говорили другие, вы можете использовать FlushFileBuffers
на платформе Windows.
fflush
Функция может делать то, что вам нужно, но она применяется только к дескрипторам файлов.
С другой стороны, FlushFileBuffers
может работать для вас, но это специфично для Windows.