MS-DOS для программиста


Буферизация - часть 2


Буферизация данных имеет и свои недостатки. Если в результате аварии в питающей сети или по какой-то другой причине компьютер выключился, то информация, хранящаяся в буферах и не записанная на диск, будет потеряна.

При закрытии файла все буферы, связанные с ним, сбрасываются на диск. Если вам надо сбросить буферы, не закрывая файл, это можно сделать с помощью функции 68h прерывания INT21h :

На входе: AH 68h
BX Идентификатор открытого файла
На выходе: AX Код ошибки, если установлен флаг переноса CF;

0, если операция выполнена успешно

При вызове этой функции дополнительно обновляется дескриптор файла в каталоге, а именно поля времени, даты и размера файла.

Обратите также внимание на функцию расширенного открытия файлов 6Ch. Эта функция позволяет при открытии файла отменить буферизацию.




Начало  Назад  Вперед