[英]Loop different functions with different timing
我有一些函數,例如afoo()
, bfoo()
和cfoo()
,我希望這些函數在不同的時間循環中同時運行/並行運行。
例:
afoo()
->每5分鍾運行一次
bfoo()
->每10分鍾運行一次
cfoo()
->每小時運行一次
反正有這樣做嗎? 也許與SetInterval()?
您可以使用setInterval方法在每個固定的時間延遲上調用一個函數,在大多數情況下,它與clearInterval方法一起用於停止重復調用,這是一個示例:
var interval = setInterval( function () {
afoo( function (err) {
// clear interval if an error occured
if ( err ) {
console.log(err);
clearInterval(interval);
}
});
}, 5 * 60 * 1000);
如果您想獲得更多控制權,然后使用node-cron模塊,它具有與linux系統相同的cron模式 ,例如:
const CronJob = require('cron').CronJob;
// run afoo function every 15 min
var job = new CronJob('00 15 * * * *', afoo);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.