我正在用 Python 做一个客户端,他注册到服务器中。该客户端向服务器发送一个 UDP 数据包register
并等待register accepted
来自服务器的响应数据包。
有一些数据包丢失的可能性,因为它是 UDP,所以我需要代码:
发送数据包并等待5秒响应,如果没有收到数据包,则再次发送数据包然后等待10秒,如果已经没有响应,现在等待15秒,如果再次没有响应,则中断循环。
我的问题是要接收我正在做的数据包:
skt1.sendto(pqtUdp,(srvAdr,prtUdp))
data,addrs = skt1.recvfrom(56)
rcvfrom 是一种阻塞方法。我进行了搜索,我认为使用select
我可以知道何时收到数据包然后读取套接字并获取它,但我不知道该怎么做,我找不到select
简单的例子来说明我在做什么。
有人可以给我一些帮助吗?
谢谢!