gpt4 book ai didi

java - Android 上丢失 UDP 套接字数据包

转载 作者:太空宇宙 更新时间:2023-11-04 14:52:19 25 4
gpt4 key购买 nike

我面临基于 Android 设备的 UDP 数据包丢失问题。我有两个设备。以下代码在一台设备上可以正常运行。另一台设备丢失了许多包裹。我已经读过solution of similar problem 。在此解决方案中,建议将数据报套接字大小设置为 64k。但我无法设置它。

如何更改数据报缓冲区大小?

我的代码:

DatagramSocket udpSocket = null;
try {
udpSocket = new DatagramSocket(5004);
udpSocket.setReceiveBufferSize(64*1024);
Log.d("UDPSocket", "Buffer Size : " + udpSocket.getReceiveBufferSize());
} catch (SocketException e1) {
e1.printStackTrace();
}

日志:

05-14 10:34:05.960: D/UDPSocket(28021): Buffer Size : 112640

最佳答案

所选答案的作者似乎在使用过去时态和几乎所有时间都用现在时说话方面存在问题,但在某一时刻他确实说

I removed this code setting buffer size and then it strated receving all the packets

所以实际上它正在改变数据报缓冲区大小,这似乎导致了它的问题。

顺便说一句,您设置缓冲区大小的方法可能有效,事实上日志消息会用您的平台缓冲区大小响应您,您无法更改,请参阅Android DatagramSocket receive buffer size .

关于java - Android 上丢失 UDP 套接字数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23649120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com