J'ai un simple serveur TCP qui écoute sur un port.
var net = require("net");
var server = net.createServer(function(socket) {
socket.end("Hello!\n");
});
server.listen(7777);
Je le démarre avec node server.js
puis le ferme avec Ctrl + Z sur Mac. Lorsque j'essaye de l'exécuter à nouveau avec node server.js
j'obtiens ce message d'erreur:
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: listen EADDRINUSE
at errnoException (net.js:670:11)
at Array.0 (net.js:771:26)
at EventEmitter._tickCallback (node.js:192:41)
Suis-je en train de fermer le programme dans le mauvais sens? Comment puis-je empêcher que cela se produise?
Ctrl+Z
action, une méthodologie appropriée pourrait être fg
de relancer le processus, puis Ctrl+C
de le tuer correctement.
fg
après Ctrl-Z, vous serez de retour là où vous vous étiez arrêté. Votre ancien nœud est donc toujours en cours d'exécution. Attention si vous faites cela pour d'autres commandes aussi!