Цитата
откуда О.С. знает, что писатель все еще пишет. ? ... Что такое рабочий процесс EOF для файла (дескриптор закрытия файла, например ^ D или ^ z)? что произойдет, если EOF никогда не будет записан?
что произойдет, если скорость чтения читателей выше скорости письма писателя? Может ли несоответствие скорости привести к тупику?
какие могут быть другие нежелательные сценарии?
Как O.S вычисляет EOF при чтении файла?
-Нихил
P.S: Текущая операционная система - это Windows, но я не против изучить интересную функцию для того же самого в unix.
Цитата
Дополнительные правки и дополнительная информация по вопросу
Теперь, когда я знаю, что EOF не является символом, он не может быть записан в данные файла. ЕСЛИ О.С. определяет EOF, используя File_size, как то, что указал даже @saurabh.
(->) EOF при чтении (вероятно, будет определяться по размеру файла, который будет храниться в таблице дисков соответствующей файловой системы))
- Таким образом, процесс продолжает опрашивать таблицу файлов для определения размера файла, чтобы определить EOF, поскольку могут быть случаи нефиксированного размера файлов.
- Насколько мне известно, EOF встречается, когда вы читаете за EOF (в нашем случае размер файла). Предположим, что писатель пишет с перерывами, а читатель читает блоки. ТАК, если читатель попытается прочитать больше, чем доступный кусок, будет брошен EOF? Но Writer еще не сообщил об EOF?