我需要使用setInterval
每隔N秒对数据库进行一次查询,并向所有Socket.IO
客户端发送结果,所以我这样做:
let interval_id = null
io.on('connection', function(socket) {
if (interval_id == null) {
interval_id = setInterval(function() {
db.table.items.getAll().then(function(items) {
process.emit('items_found', items)
}).catch(function(err) {
log.error(err)
})
}, config.scan.interval)
}
process.on('alarms_found', function(alarms) {
console.log(alarms.length)
})
})
它工作正常,但我是NodeJS
中的新手,我不知道有什么其他方法可以做到这一点......总的来说,我理解全球范围的使用不是最好的主意,但我不认识别人......
答案 0 :(得分:1)