Мне нужно fsync диапазон байтов, который я добавил в файл, не заставляя флеш метаданных (filesize, ...).Эквивалент системного вызова sync_file_range Linux в Windows?
0
A
ответ
2
Как вы сказали, что это ring3 и это C++, вот ответ:
Вы должны вызвать FlushViewOfFile
после преобразования файла. Согласно MSDN:
Функция FlushViewOfFile не смывать метаданные файла, и не ждать, чтобы вернуться, пока изменения не будут сброшены из базового кэша аппаратного диска в и физически записаны на диск.
Источник: https://msdn.microsoft.com/en-us/library/windows/desktop/aa366563%28v=vs.85%29.aspx
Пример кода, который записывает данные и использует FlushViewOfFile здесь: http://forums.codeguru.com/showthread.php?367742-FlushViewOfFile-does-not-Flush
Какой язык? В ring0 или ring3? –
В ring3 с C или C++. – skyde