Единственное решение, которое я нашел до сих пор, было http://chadaustin.me/2009/04/flushing-disk-cache/, но это занимает слишком много времени, поэтому Надеюсь, мы найдем лучше.
Насколько я понимаю, к сожалению, невозможно удалить кеш чтения под Windows. Я потратил некоторое время на изучение этого несколько лет назад, и только узнал, как сбросить кеш записи.
На мой взгляд, у вас есть три варианта, если только кто-то еще не нашел волшебства:
РЕДАКТИРОВАТЬ: действительно возможно очистить кеш чтения, по крайней мере, в Vista и более поздних версиях: Отключить или очистить кеш страниц в Windows. Однако для этого требуется вызов недокументированного NtSetSystemInformation
NT API. Кроме того, для одного файла кэш чтения можно очистить, просто открыв файл с указанным FILE_FLAG_NO_BUFFERING
и снова закрыв дескриптор.