2011-02-05 2 views
3

Я использую Windows API для работы с файлами. Моя работа очень хорошая. Я читаю файл в кусках, но я не знаю его оптимального размера. Я знаю, что он должен быть кратным размеру кластера диска.Оптимизация - чтение файла с диска с помощью API Windows

Имеет ли диск кеш? ЕСЛИ я использую кусок больше, чем кеш, моя производительность должна быть хуже? Я прав?

спасибо!

ответ

1

Да, Windows обеспечивает уровень кэша при работе с файлами. См. official MS documentation. Я не уверен в точном размере кеша и возможных компромиссах, вероятность того, что размер кеша зависит от объема доступной памяти системы и, возможно, от других факторов.

Еще один хороший способ повысить производительность - использовать асинхронный API ввода-вывода. Труднее писать и поддерживать, но улучшает вашу производительность. См. official example.

Смежные вопросы