我有一个用于调度任务的 NodeJS 应用程序,该任务用于创建预订,可以在执行任务之前取消预订,有可能有数十万个任务(例如,一分钟内创建了 67 个任务)
我这样做的方式是调用这个函数:
runOnDate = function (dateIn){
console.log('scheduling')
var now = (new Date()).getTime();
var booking = setTimeout(startBooking , (dateIn - now));
//Lets try to catch the ID number of booking
console.log(booking) // Shows [object Object]
console.log(booking.timeoutID) // Shows undefined
}
如果我必须取消其中一个,我的问题就开始了setTimeout
,我知道使用它的setTimeout
返回值。Number
clearTimeout()
但我似乎无法得到号码,有没有办法创建一个具有唯一 ID的计时器,我可以使用它clearTimeout()
或其他方式来调用clearTimeout
特定的setTimeout
?