Удалить (unlink) или Создать (fwrite) файл с PHP, когда файл используется

Я запускаю веб-сайт с системой LAMP.

Содержание происходит из базы данных.

Для целей кэширования я создаю файлы на своем веб-сервере (содержащие содержимое кэша) (через fwrite() ).

Время от времени я удаляю файлы кеша (через unlink() ).

Создание и удаление файлов выполняется с помощью cronjob.

Мой вопрос: что происходит, когда посетитель моего веб-сайта просматривает (= запрос из веб-сервера) файл A.php, и я пытаюсь записать или удалить этот же файл A.php.

Если быть точным: что произойдет, если моя cronjob выдает команду unlink() и одновременно передает файл пользователю.

Будет ли это создавать условия гонки?

Я знаю, как получить статус из операций unlink и fwrite, так что я могу просто перебрать мой unink / fwrite до тех пор, пока эта функция возвращает false (не может быть удалена / записана)?

С нетерпением ждем ваших отзывов и ответов!

Да, это явно создаст условия гонки. Запрос файла с веб-сервера и удаление из задания cron являются независимыми процессами, и вам не удастся узнать, что он или что-то делает с файлом.