Node.js脚本正在运行,但它不会停止!

时间:2011-06-27 17:34:20

标签: node.js centos

我在CentOS 5下的Node.js中运行了这个test.js。它运行得很好。问题是,它不会停止!即使在关闭我的ssh客户端后,它也不会停止。

如何停止正在运行的脚本?

3 个答案:

答案 0 :(得分:16)

$ pkill node

为你工作?

答案 1 :(得分:12)

你运行的代码是什么,如果是nodejs.net首页提供的示例代码,那么当你在终端和服务器上运行时,你可以点击 CTRL + C 停止当前任务

如果您使用SSH并且您希望发出命令来停止节点进程,那么执行以下操作:

$ ps aux | grep node
USR  PID  1.5  0.2  44172  8260 pts/2    S    15:25   0:00 node app.js
$ kill -2 PID

这只是找到节点进程的PID然后杀死它们

答案 2 :(得分:7)

有时,问题的解决方案是确保节点进程正在处理的工作已完成。这样事情很好地结束了,你没有冒险杀死不应该的东西。调试代码并按照调用堆栈查找流氓。

必须要杀死节点进程,这表明你做得不对。

我有一段时间没遇到这个问题了,这个过程应该停止了,但由于某些原因它没有。在插入控制台日志以找到无休止的待处理函数以及node debug ing ...

之后,非常痛苦
exports.something = require('./something')

左手混在一起。我包括检查文件是否像模块一样被使用,这似乎可以解决问题。

if (require.main !== module) {
    exports.something = require('./something')
}

该文件不再无所事事。