#windows #linux #file
#Windows #linux #файл
Вопрос:
В Linux для автоматического удаления файла при завершении процесса можно использовать следующий метод: процесс создает файл с помощью open или creat, а затем немедленно вызывает unlink. Однако файл не удаляется, поскольку он все еще открыт. Файл удаляется только тогда, когда процесс либо закрывает файл, либо завершается, что приводит к тому, что ядро закрывает все свои открытые файлы.
Есть ли способ получить такой же результат в Windows?
Ответ №1:
Вы можете перейти к CreateFile
флагу FILE_FLAG_DELETE_ON_CLOSE
.
Комментарии:
1. Да, это так. Windows закрывает открывающиеся файлы при сбое процесса. Таким образом, файловая система удалит файл (когда количество открытых файлов равно нулю).