recvfrom如果没接收到数据返回值是什么
2个回答
展开全部
检查,接收socket有没有绑定端口,绑定的哪个端口,这个端口,是不是客户端发送指定的端口相同。
其次,检查发送的socket所发送到的地址是不是正确的,端口是不是正确。
再次次,sendto是UDP的发送接口,UDP不提供有保证的服务(与TCP的不同)。所以,在网络状况差的环境下,UDP很有可能会丢包。
如果楼主要传输文件之类的数据,建议使用TCP,因为文件需要保证完整性,UDP可能会丢包。保证不了。
当然,你也可以添加RTP协议辅助UDP来保证传输。
其次,检查发送的socket所发送到的地址是不是正确的,端口是不是正确。
再次次,sendto是UDP的发送接口,UDP不提供有保证的服务(与TCP的不同)。所以,在网络状况差的环境下,UDP很有可能会丢包。
如果楼主要传输文件之类的数据,建议使用TCP,因为文件需要保证完整性,UDP可能会丢包。保证不了。
当然,你也可以添加RTP协议辅助UDP来保证传输。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询