В настоящее время я пытаюсь реализовать простую, но эффективную систему очередей для моего NodeJS Express API, на данный момент в моем app.get
запросе есть следующее:
createOrder(req, res).catch(function ignore() {});
return res.send(functions.success_response({
'MESSAGE': 'Order Received!'
}));
Эта функция createOrder
имеет следующее:
let params = await parser.parseStringPromise(req.body.parameters);
state.device_imei = params.PARAMETERS.IMEI;
while(queue.length >= 10) {
console.log('Current Queue Length: ' + queue.length + ', IMEI: ' + state.device_imei + ' waiting...');
}
queue.push(state.device_imei);
//some more code logic here.....
queue.splice(queue.indexOf(state.device_imei), 1 );
Моя queue
переменная - это просто простая глобальная область видимости let queue = [];
Проблема, с которой я столкнулся, заключается в том, что моя очередь кажется, не уменьшается? и навсегда застрял на while()
?
Кроме того, как я могу изменить while
, чтобы он выполнял проверку каждую секунду, а не мгновенно повторялся?