有人能告诉我如何使用nodejs和socket.io每秒向连接的客户端发送连续更新吗?
注意:我不想使用setInterval()函数,因为它不适合我当前的场景。
答案 0 :(得分:1)
您可以在setTimeout
中引用自身的函数中使用setTimeout
执行此操作。与执行setInterval
基本相同的结果,但在再次运行超时函数之前总是等待函数完成(假设同步代码)。
function thingToRepeat() {
let shouldCancel = false;
// send messages, do stuff,
// set shouldCancel to true to stop looping if needed
if (!shouldCancel) {
setTimeout(thingToRepeat, 1000);
}
}