Возможно, вы хотите, чтобы ваши операции по созданию и обновлению файлов, в которых они обслуживаются, были атомарными, чтобы любые другие процессы, работающие с этими файлами, получали правильную версию, а не ту, которая все еще открыта для записи.
Вместо того, чтобы записывать файлы туда, где они будут обслуживаться, вы можете записать их во временный каталог, а затем переместить их в каталог, откуда они будут обслуживаться.
Аналогичным образом, для их обновления вы должны убедиться, что когда ваше приложение обновляет эти pdf-файлы, сами файлы не изменяются до тех пор, пока запись не будет завершена. Вы можете проверить это, например, переведя ваше приложение в спящий режим после начала записи в файл.