Ich versuche einen Django-Prozess zu erzeugen, der weiterlebt, nachdem das aufrufende Skript gestorben ist. Aber ich brauche es PID.
Also habe ich den folgenden Code geschrieben:
%Vor%Dies gibt mir die folgende Ausgabe:
%Vor%Aber jetzt, wenn ich die Live-Prozesse überprüfe:
%Vor%Das Pid hat sich geändert! Was um Himmels Willen geht vor?
Wenn Sie die andere PID sehen, dann gibt es definitiv einen neuen Prozess. Sie können leicht den Ort finden, an dem der neue Prozess entstanden ist. Beginnen Sie in django.core.management.commands.runserver
und Sie werden zu django.utils.autoreload.python_reloader
kommen. Wenn python_reloader
zum ersten Mal in einem Prozess aufgerufen wird, geht es zu restart_with_reloader
, wo Sie folgendes sehen können:
Dadurch erhalten Sie mit Ihrem Skript zwei Prozesse: einen, in dem runserver
ausgeführt wird, und einen (mit einem Webserver). Überprüfen Sie es: