gpt4 book ai didi

linux - 资源暂时不可用,UDP套接字

转载 作者:太空宇宙 更新时间:2023-11-04 11:48:00 24 4
gpt4 key购买 nike

我正在通过 UDP 套接字与设备通话。我发送一个命令,然后收到它的响应。消息需要每 100 毫秒发送一次。我用

设置了接收超时
struct timeval t = {.tv_sec = 0, .tv_usec = 100000};
setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, t, sizeof(t));

fd 是我的套接字文件描述符。很长一段时间一切正常,但随后我开始在 recvfrom(...) 调用中收到 Resource temporary unavailable 错误。据我了解,这是因为接收缓冲区中没有任何内容。我希望在下一次迭代中缓冲区会满,但我仍然得到 Resource temporary unavailable。换句话说,系统不会恢复。这是套接字本身、套接字上的设置还是设备的问题?

最佳答案

如果您最初获得流量,则套接字或其配置应该没有问题。如果是这种情况,您会看到不同的错误消息。

如果您只连续一两次遇到该消息,则可能是由于某些网络问题导致的网络延迟或数据包丢失。 (例如开关坏、网络连接慢等)

如果您一直遇到该消息(每次调用 recvfrom 时),则客户端和服务器之间的连接可能存在问题。我会验证客户端是否仍在发送消息并检查您的网络连接。

关于linux - 资源暂时不可用,UDP套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56996088/

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