Tengo un servidor TCP simple que escucha en un puerto.
var net = require("net");
var server = net.createServer(function(socket) {
socket.end("Hello!\n");
});
server.listen(7777);
Lo inicio node server.js
y luego lo cierro con Ctrl + Z en Mac. Cuando intento ejecutarlo nuevamente con node server.js
este mensaje de error:
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)
¿Estoy cerrando el programa de manera incorrecta? ¿Cómo puedo evitar que esto suceda?
Ctrl+Z
acción, una metodología adecuada podría ser fg
revivir el proceso y luego Ctrl+C
matarlo adecuadamente.
fg
después de Ctrl-Z, volverá a donde lo dejó. Entonces su nodo anterior todavía se está ejecutando. ¡Cuidado si estás haciendo esto para otros comandos también!