Dies ist eher eine Frage nach den besten Praktiken. Auf meinem Server können Benutzer mit FontForge Schriftarten von einem Format in ein anderes konvertieren. Um Kollisionen zu vermeiden, ist nur eine Schriftkonvertierung pro Instanz erlaubt.
Wenn ein Benutzer eine Konvertierung initiiert, wird eine PID-Datei erstellt, die als Sperre fungiert. Wenn ein anderer Benutzer versucht, eine Konvertierung einzuleiten, während die erste Konvertierung noch läuft, hält das Skript einen Moment lang an und sucht erneut nach der PID-Datei.
Dies wiederholt sich, bis der erste Prozess die PID-Datei entfernt und damit den Zugang zu FontForge freigibt. Wenn der erste Benutzer das Skript jedoch abbricht, bevor es beendet ist (indem er die Stopp-Schaltfläche seines Browsers drückt), wird das Skript beendet, bevor die PID-Datei entfernt wird. Der zweite Benutzer kann dann nicht fortfahren.
Wie kann man das am besten handhaben?