Ich habe eine mögliche Theorie dafür.
Wenn Sie die Anwendung als ausführen
$ rake resque:work QUEUE='*' & [1] 13031
Die Anwendung führt intern eine fork+exit
Ausführung im Hintergrund aus.
C
Code-Äquivalent dazu wäre:
if(fork()) exit(0);
Der Prozess mit PID==13031
wird einen untergeordneten Prozess erzeugen und sich selbst beenden. Das Kind läuft weiter im Hintergrund und wird vom Init-Prozess geerbt (PID == 1).
Wenn dies der Fall ist, können Sie enternach dem Starten des rake
Befehls eine andere Taste drücken . Sehen Sie Drucke wie diese?
[1]+ Done rake resque:work QUEUE='*'
Versuchen Sie, ps
im Terminal zu laufen . Das sollte die untergeordnete Prozess-PID anzeigen. Wenn Sie kill
das tun, sollte der Dämon beendet werden.