如何停止基于节点服务器的间隔脚本?

时间:2016-11-15 05:45:12

标签: javascript node.js setinterval

我正在使用Expressjs框架在Nodejs中创建一个应用程序。

我尝试使用setInterval()JavaScript方法在每分钟后执行一些脚本。

当我通过node app.js启动服务器时,脚本成功运行。但是,当我通过Ctrl+c停止服务器并尝试重新启动它时,它会说3000(我的服务器端口)已经在使用中。

我无法重启我的服务器也无法访问我的网站。我正在使用Ubuntu。

我使用了以下所有命令,但它并没有停止。

  1. fuser -k 3000 / tcp

  2. kill processNumber

  3. killall node

  4. 代码:

     router.get("/trackplayers", function(req, res, next ) {
        // Run in every minute
        setInterval(function(){
           console.log('Players tracking is under process..');
        }, 60000);
     });
    

    提前致谢!

1 个答案:

答案 0 :(得分:0)

务必彻底退出该过程。以下代码将优雅地终止快速申请。

{
    "nodes": [
        {
        "type": "school",
        "country": "US",
        "name": "saint peter's",
        "id": 1006
        },
        {
        "type": "univeristy",
        "country": "Brazil",
        "name": "saint joseph's",
        "id": 1007
        }        
        ...
    ],
    "links": [
            {
            "source": 1006,
            "target": 1007,
            "value": 20            
        },
       ...

    ],
    "types": [
                {
                    "type": "school",
                    "image": "image01"
                },
                {
                    "type": "univeristy",
                    "image": "image02"
                },
                {
                    "type": "company",
                    "image": "image03"
                },
                ...
            ]   
}