Ich benutze nodemon in meiner Nodejs App, um automatisch neu zu starten, wenn Änderungen zutreffen. Aber wenn ich nodemon mit "Strg + C" in Ubuntu-Umgebung stoppe, stoppe Nodejs nicht. Ich muss den Prozess durchsuchen, der über den Port ausgeführt wird, und manuell mit kill -9 beenden. Wie kann ich das beheben?Das Beenden von nodemon stoppt den Prozess in Ubuntu nicht.
0
A
Antwort
0
quick and dirty Lösung
process.on('SIGTERM', stopHandler);
process.on('SIGINT', stopHandler);
process.on('SIGHUP', stopHandler);
function stopHandler() {
console.log('Stopped forcefully');
process.exit(0);
}
richtige Lösung
Graceful Shutdown
Implementierung ist eine bewährte Methode. In diesem Beispiel sollte ich nur den Server stoppen. Wenn der Server länger als 2 Sekunden anhält, wird der Prozess mit dem Exitcode 1
beendet.
process.on('SIGTERM', stopHandler);
process.on('SIGINT', stopHandler);
process.on('SIGHUP', stopHandler);
async function stopHandler() {
console.log('Stopping...');
const timeoutId = setTimeout(() => {
process.exit(1);
console.error('Stopped forcefully, not all connection was closed');
}, 2000);
try {
await server.stop();
clearTimeout(timeoutId);
} catch (error) {
console.error(error, 'Error during stop.');
process.exit(1);
}
}
Verwandte Themen
- 1. C++ Prozess stoppt nicht
- 2. Den Prozess des foxpro beenden
- 3. Shell Script kann den Prozess nicht beenden
- 4. Warum Prozess nicht in Multiprozess beenden
- 5. Kill einen Prozess und warten auf den Prozess zu beenden
- 6. Beenden von Bash-Skript, aber den Prozess laufen lassen
- 7. Sie sich von „sowieso beenden“ prompt mit GDB los: einfach den Prozess beenden und beenden
- 8. Qt QProcess startDetached kann den Prozess nicht beenden (bash session)
- 9. Beenden Excel-Prozess
- 10. Native Reaction: BackHandler.exitApp() kann den Prozess der App nicht beenden
- 11. Simple Daemon-Prozess in Ubuntu
- 12. Prozess beenden Problem Thread nicht erfolgreich beendet
- 13. Ist es möglich, den Kern zu entladen, aber den Prozess nicht zu beenden?
- 14. Wie Prozess beenden VBScript mit
- 15. C Das Lesen von Dateien stoppt nicht
- 16. Töte nicht töten Prozess, wenn Sie richtig beenden
- 17. Android: Html 5 Video stoppt nicht auf Aktivität beenden
- 18. So beenden Sie einen Prozess in VBScript
- 19. Nodejs npm konnte nicht installiert werden nodemon
- 20. Spawn interaktiver Prozess und beenden in NodeJS
- 21. Nodemon - Ausschluss von Dateien
- 22. Wie kann ich den PM2 - No-Daemon-Prozess beenden?
- 23. kann keinen sudo Prozess mit Python erstellt, in Ubuntu 15.10
- 24. Nodemon funktioniert nicht in Docker Umgebung
- 25. Warum beendet Hibernate den Java-Prozess zum Beenden?
- 26. Wie kann man einen Nodejs-Prozess in Linux beenden?
- 27. wie ssh tunnel untergeordneten Prozess nach bash Skript beenden beenden
- 28. Wie nodemon auf einem Windows
- 29. Wie kann man das Debugging stoppen (oder den Prozess trennen), ohne den Prozess zu stoppen?
- 30. Warten auf SparkContext, um den gesamten Prozess zu beenden?
Gibt es keine Tastenkombination oder etwas, das zu tun? Ich meine "Ctrl + C" drücken? –
STRG + C sendet das Signal SIGINT – galkin