Повысил ли что-нибудь эффект fsync ()?

Ли Boost библиотека предоставить что-то похожее на fsync()?

Мотивация: быть портативным вне POSIX — например, такой, что в Windows используется аналогичная функция.

2

Решение

Нет, у повышения нет такой вещи. И как отметил Брайан Бьюнинг в комментариях, синхронизация ОС с устройством очень сильно зависит от ОС.

Однако вам не нужно напрямую вызывать API-интерфейсы Windows, поскольку библиотека времени выполнения Microsoft C имеет fsync(), Было названо _commit, и вы остаетесь достаточно переносимым, поскольку вы можете продолжать работать с файловыми дескрипторами вместо того, чтобы менять код для работы с Windows HANDLE.

Вы можете представить свой собственный помощник по переносимости в соответствии с:

ifdef __WINDOWS__
#include <io.h>
#define fsync  _commit
endif
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]