node.js - 从命令行停止 node.js 程序

标签 node.js command

我有一个监听端口的简单 TCP 服务器。

var net = require("net");

var server = net.createServer(function(socket) {
    socket.end("Hello!\n");
});

server.listen(7777);

我用 node server.js 启动它,然后在 Mac 上用 Ctrl + Z 关闭它。当我尝试使用 node server.js 再次运行它时,我收到以下错误消息:

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)

我是否以错误的方式关闭程序?我怎样才能防止这种情况发生?

最佳答案

要结束程序,您应该使用 Ctrl + C。如果你这样做了,它会发送 SIGINT,它允许程序优雅地结束,从它正在监听的任何端口中解除绑定(bind)。

另请参阅:https://superuser.com/a/262948/48624

关于node.js - 从命令行停止 node.js 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10522532/

相关文章:

javascript - koa.js 注册后返回 404 "Not Found",而不是来自 ctx.body 的 token

javascript - 如何在另一个文件中使用 MongoDB 集合

sql - Sequelize 外键引用复合主键

linux - 使用 'less' 命令时在 Unix 中显示特殊字符

c - 我缺少什么,所以我可以编译我的源代码?我是新手

linux - bash:遍历进程输出并终止进程

mysql - 如何在成功等待脚本后启动 docker 容器

linux - "top"命令是否有参数可以获取永久结果?

linux - 将 unix 操作系统命令的外部重定向到 html 页面

node.js - Node 未找到全局模块