Ich verwende einen benutzerdefinierten Django runserver
Befehl, der eine Reihe von Bereinigungsfunktionen bei Beendigung ausgeführt werden soll. Das funktioniert gut, solange ich den Autoreloader nicht benutze: vom Server fängt die KeyboardInterrupt-Ausnahme richtig ab und wird ordnungsgemäß beendet.Graceful Exit-Server bei der Verwendung von Django Autoreloader
Wenn ich jedoch Djangos Autoreloader verwende, scheint der Reloader den Server-Thread einfach zu beenden, ohne ihn ordnungsgemäß zu beenden (soweit ich das beurteilen kann, hat er dafür keine Mittel).
Das scheint inhärent unsicher, so dass ich nicht wirklich glauben kann, dass es keinen besseren Weg gibt, damit umzugehen.
Kann ich die Autoreloader-Funktionalität irgendwie nutzen, ohne dass mein Server-Thread unsauber gelöscht wurde?
Ich weiß nicht, welche Art von Bereinigung du redest. Sie sollten jedoch nicht erwarten, dass sich ein Thread in der Produktion weder mit 'runserver' noch mit einem WSGI-Server ordnungsgemäß schließt. –