Вы можете определенно получить наполовину записанные файлы.
Одно из распространенных решений - не записывать файлы в местоположение (и / или имя), где они, как ожидается, будут правильными.Вместо этого вы можете записать их во временный каталог (и / или имя) в том же томе / файловой системе , а когда они закончат, переместите / переименуйте их в правильный каталог / имя.
Причина, по которой они должны находиться в одной и той же файловой системе, проста: только так можно выполнить перемещение атомарно: т. е. в тот самый момент, когда файл виден под «окончательным» именем, он уже будет полностью записан.