我正在开发一个嵌入式应用程序,我通过UDP接收一些传感器值。我正在使用的主板在ARM处理器上运行2.4内核。问题如下:一旦我的内部套接字缓冲区已满,只有最新的值被替换。所以内部缓冲区没有实现为循环缓冲区,它应该是,因为我发现了一些文章。我可以以某种方式改变内部接收缓冲区的行为吗?
我已经发现没有办法"冲洗"来自应用程序端的缓冲区。我收到的最好的想法是在接收任何数据包之前检查接收缓冲区是否已满,如果是这样,请手动读出所有旧数据包。有没有更好的方法?
我希望它能以某种方式明确我的意思,感谢任何帮助。
答案 0 :(得分:0)
我最好的想法是检查接收缓冲区是否已满, 在接收任何数据包之前,如果是这样,请先读出所有旧数据包 手动包。
我不打扰检查接收缓冲区是否已满,而是始终读取所有数据包,直到不再存在并使用最后一次接收,其中包含最新值。