Как вызвать PHP фатальную ошибку при завершении процесса? - PullRequest
0 голосов
/ 12 апреля 2020

У меня проблема со скриптом, который зависает примерно в 1% случаев, как он описан здесь .

Чтобы избежать запуска более одного раза за раз, сценарий создает временный файл, который удаляется, если сценарий завершен или произошла фатальная ошибка PHP.

Когда сценарий зависает, это, конечно, не происходит, и поэтому все застревает, так как следующий запланированный запуск не начнется, так как временный файл все еще существует.

Никому еще не удалось выяснить, почему сценарий зависает, так что пока я думаю использовать «грязное» решение, имея система уничтожит скрипт, если он займет больше времени, чем ожидалось, что может означать, что он завис.

Я могу сделать это, запустив его как timeout -s KILL 1m php script..php, который убивает его через минуту, если я предполагаю, что он должен был закончиться в течение минута.

Однако, если убить его таким образом, это не решит проблему с временным файлом, и поэтому я хочу знать, есть ли способ как убить его, так и создать фатальный ошибка для скрипта, поэтому он будет удалять временную. файл

...