私はExpressjsフレームワークを使用してNodejsでアプリケーションを作成しています。ノードサーバーベースのインターバルスクリプトを停止するにはどうすればいいですか?
JavaScriptのsetInterval()メソッドを使用して毎分スクリプトを実行しようとしました。
node app.js
でサーバーを起動すると、スクリプトは正常に実行されます。しかし、私はCtrl+c
でサーバを停止し、それを再起動しようとすると3000(私のサーバポート)がすでに使用中であると言います。
サーバーを再起動できず、自分のWebサイトにアクセスできません。私はUbuntuを使用しています。
以下のすべてのコマンドを使用しましたが、停止しません。
3000/tcpの-k定着
processNumber
killallをノード
コード殺す:事前に
router.get("/trackplayers", function(req, res, next) {
// Run in every minute
setInterval(function(){
console.log('Players tracking is under process..');
}, 60000);
});
感謝を!
あなたはコードが役立つ貼り付けると..しかし、代わりに設定された間隔の私のunderstadingあたりとして、より良い私たちは、実行が再びコールバックで完了したら、あなたは関数を実行することができるようになりますsettimout使用して、どの..コールバックとsettimoutで行きます新しいsettimeoutを作成します。 –
'Ctrl + c'を押した後、' ps aux'を実行してもプロセスが動作しているようですか? –
ps auxまたはps auxと入力すると、プロセスは存在しません。 grepノード – Tahir