Учитывая следующий код:
const file = await Deno.open(fsPathname, { read: true })
return new Response(file.readable, { status: 200 })
Будет ли FsFile.readable
автоматически закрывать файл после исчерпания потока? В документации об этом не упоминается. Если ответ «нет», то я не понимаю, как закрыть файл без серьезной ненужной сложности.
Да, файловый ресурс, связанный с его читаемым потоком, будет закрыт, когда поток встретит EOF.
Документация в настоящее время отсутствует, но был создан PR, чтобы улучшить это, а также добавить возможность предотвратить закрытие файлового ресурса, если это необходимо.
Что делать, если ошибка возникает до EOF? Может ли это вызвать утечку ресурсов или в этом случае файл тоже закроется?