想要使Java停止等待UDP服务器和客户端,但我开始遇到一些问题。我已经制作了一个简单的UDP客户端和服务器而没有停止等待部分,但我现在想学习如何更改它。如何使用Java套接字发送ACK并实现超时?
有人可以在我的实施中发布一些示例供我使用吗?
答案 0 :(得分:0)
如果您在UDP中实现此功能,则发送和接收确认由您自己决定。这似乎是你想要的停止和等待协议。就伪代码而言,你会想要这样的东西:
int Send(msg)
{
char rcvBuf[];
sentBytes = sock.send(msg);
sock.rcv(rcvBuf);
return sentBytes;
}
int Recv(rcvBuf)
{
String ackMsg = "ACK";
length = sock.rcv(rcvBuf);
sock.send(ackMsg);
return length;
}
每次发送后,您都会等待确认消息进入,每次收到时,都会发送确认。