1。可以在一个接听电话中接收多封邮件吗?
发件人伪代码:
target = ("xxx.xxx.xxx.xxx", 1234)
sender = new_udp_socket()
sender.send("Hello", target)
sender.send("World", target)
接收器伪代码:
receiver = new_udp_socket()
receiver.bind("", 1234)
while true
data = receiver.recvfrom(512)
print(data)
接收方是否有可能在一个接收呼叫中接收"HelloWorld"
而不是分别"Hello"
和"World"
?
有人告诉我 是可能的,但我想确定。
2。如果可以在一个接听电话中接收多条消息,如何确保我的代码分别处理两条消息?
我一直在考虑这个问题,但无法提出任何解决方案。
我的第一个想法是,我将在send调用的开头添加一个字节,说明消息的长度。
我也不认为这是可靠的,因为如果接收方缓冲区中的数据过多,则开头(消息长度)可能会被切断,因此我的程序将失败。
感谢您的帮助!
答案 0 :(得分:1)
经过大量研究,我找到了问题的答案。
一个recvfrom呼叫只会收到一个sendto呼叫。
来源: