В Python я могу открыть файл с f= open(<filename>,<permissions>)
.Это возвращает объект f
, в который я могу записать, используя f.write(<some data>)
.
. Если в этот момент я получаю доступ к исходному финалу (например, с cat
из терминала), он выглядит пустым: Pythonсохранил данные, которые я записал в объект f
, а не в самом файле на диске.Если я затем вызываю f.close()
, данные в f
сохраняются в файле на диске (и я могу получить к нему доступ из других программ).
Я предполагаю, что данные буферизируются для увеличения задержки.Однако что произойдет, если буферизованные данные сильно вырастут?Будет ли Python инициировать запись?Если это так, подробности о внутренних компонентах (что влияет на размер буфера? Обрабатывается ли дисковый ввод-вывод в Python или другой программой / потоком? Есть ли вероятность, что Python просто зависнет во время записи?), Будут очень благодарны.