2011-06-27 47 views
9

このtest.jsはCentOS 5のNode.jsで動作しています。問題は、それは止まらない!私のsshクライアントを閉じた後でさえ、それは止まらないでしょう。Node.jsスクリプトは実行中ですが、停止しません!

実行中のスクリプトを停止するにはどうすればよいですか?

+0

'killall name_of_script' –

+0

答えに記載されているとおり、問題は' screen'でした。 – Kriem

答えて

16

はあなたのための

$ pkill node 

動作しませんか?お使いの端末とサーバが稼働している中、あなただけを停止するC + CTRLを打つことができたときにそれがサンプルコードは、その後nodejs.netのフロントページで提供されます場合は、コードあなたのランニングは何

+0

Pffでした。何が間違っているのか分からない。ありがとう! :) – Kriem

+0

問題は画面でした。スクリプトを実行しましょう。 – Kriem

12

現在のタスク

あなたはSSHの上にしていて、ノードのプロセスを停止するコマンドを発行したい場合は、そのような何か:ちょうどノードのプロセスのPIDさんを発見し、それらを殺しています

$ 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 

+0

これは、いくつかのhtmlを出力するミニサーバーです。しかし、私はsshクライアント経由で起動しました。 – Kriem

5

場合によっては、問題の解決策は、ノードプロセスが処理している作業が完了していることを確認することです。そうすれば、物事はきれいに終わり、あなたは何をすべきではないかの危険を冒すことはありません。コードをデバッグし、コールスタックに従って、不正なものが何かを見つけてください。

ノードプロセスを強制終了することは、何か正しいことをしていないという兆候です。

私はこの問題を少し前にしていましたが、プロセスは停止するはずでしたが、何らかの理由でそれができませんでした。ずっと延々と保留された関数を見つけるために、コンソールログの挿入の痛み、およびnode debug ING ...

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

後の周りの混入を残しました。私はファイルがモジュールのように使われていたことを確認したが、それはそのトリックをしたようだった。

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

ファイルは何も処理しないでハングしません。

関連する問題