【发布时间】:2013-03-23 03:03:49
【问题描述】:
使用 Java 编写基于 UDP 的客户端/服务器。
当服务器不断从套接字获取数据包时:
socket.receive(packet);
即使客户端发送多个数据包,例如数据包 1、2、3 和 4,客户端也只能获取数据包 4。重新发送所有这些数据包或以相反的 4 顺序发送它们没有区别,3,2 和 1. 客户端只能获取序列号较大的数据包,有点神奇。但我真正想要的是获得所有 4 个数据包。
【问题讨论】:
-
发布一些代码。你是如何发送数据的?您是否在单独的线程中接收数据?
-
@Thorn:不在线程中。发件人部分看起来像:
for(int i=0;i<10;i++){socket.send(packet[i]);} -
我仍然需要更多代码来帮助您。贴出发送和接收UDP数据包的所有相关代码。
-
@Thorn 请在上面查看我编辑的代码,谢谢!
-
如果解决了,写下解决方案作为答案,并接受我们的回答