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

我有这个test.js运行在CentOS 5下的Node.js。它完美的工作。 问题是,它不会停止! 即使closures我的SSH客户端,它不会停止。

我怎样才能停止正在运行的脚本?

 $ pkill node 

为你工作?

你运行的代码是什么,如果它是由nodejs.net首页提供的示例代码,那么当你在你的terminal和你的服务器正在运行,你可以按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 

这只是find节点进程的PID,然后杀死它们

有时候,问题的解决scheme是确保节点进程正在进行的工作已经完成。 这样,事情就会很好地完成,而且你不会冒着杀死不应该的东西的风险。 debugging你的代码,并按照调用堆栈来findstream氓。

不得不杀死节点进程是一个迹象,你没有做正确的事情。

我曾经有过这个问题,而且这个过程本该停止,但是由于某种原因,过程本身并没有。 插入控制台日志find无尽的挂起的function和node debug痛苦之后…

 exports.something = require('./something') 

被留在周围。 我包括一个检查,该文件正在像一个模块使用,这似乎是伎俩。

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

该文件不再挂在无所事事。