2017-08-02 12 views
0

私は毎分分のデータベースの時刻をチェックするnodejsの何かに取り組んでいます。これを行うには、setIntervalを可能な限り分に近づけるために、サーバーを最初に起動するときにsettimeoutを取得しました。ただし、setintervalを開始するsettimeoutコールバックは、待機するのではなく、ただちに起動します。すぐに実行するsetTimeoutコールバック

setTimeout(function(){ 
    console.log('starting time checks'); 
    setInterval(afterdelay,60*1000); 
}, 60-new Date(Date.now()).getSeconds()); 

答えて

2

指定された機能やコードが実行される前にsetTimeoutコールバックの2番目のパラメータが時間で、ミリ秒単位で、タイマーを待つ必要があります。

setTimeout(function(){ 
    console.log('starting time checks'); 
    setInterval(afterdelay, 60*1000); 
}, 60000); 

しかし、あなたはafterdelay関数Aを実行する場合私が代わりにミリ秒の秒をした

setInterval(afterdelay, 60000); 
+0

:アプリ開始後分は、あなたがsetIntervalsetTimeoutせずに使用することができます。ありがとう。 –

関連する問題