如何将数据发送到多个客户端套接字

时间:2014-05-04 17:21:34

标签: sockets air

我有一个AIR服务器应用程序。有几个移动客户端连接到它。如果只有一个客户端,一切都很好,但是当服务器在循环中向多个客户端发送数据时,客户端无法立即处理数据。数据延迟了一步。

这段代码在for循环中:

clients[i].client.writeObject(data);
clients[i].client.flush();

只有发送数据的客户端才能从服务器获取更新。其他人都安静了一步。如果客户端发送另一条消息,则所有其他客户端都将更新为先前发送的更新状态。

代码在客户端上很好,因为在计算机上运行的客户端正在按时接收更新。只有移动客户端无法更新。

这个问题可能是什么原因?

同时向多个客户端套接字发送数据的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

我通过设置定时器来延迟数据传输1/3秒来解决了这个问题。延迟时间减少导致同样的问题。我不认为这是唯一的解决方案,但它确实有效。 此解决方案的问题是,如果有100个客户端,则最后一个将在30秒内收到数据更新。