我的代码的右边部分是
io.sockets.on('connection', function(socket){
var interval = setInterval(function() {
repaintGraph()
socket.emit('set data chart', '{"series":[['+series+']]}');
}, 1000 );
在这种情况下的图表,如果我连接了3个用户,图表会在一秒内更新3次我需要在1秒内执行1次代码,无论客户端数量是多少
答案 0 :(得分:0)
尝试使用
socket.broadcast.emit('event',data)
答案 1 :(得分:0)
您可以在连接代码之外运行间隔代码:
setInterval(function() {
repaintGraph();
io.emit('set data chart', '{"series":[['+series+']]}');
}, 1000);
io.on('connection', function() {
...
});
io.emit()
将每秒向所有连接的客户端广播该消息。
代码中的效率低下,即使没有连接任何客户端,它也会每秒调用repaintGraph()
,但它会使代码更容易。< / p>