gpt4 book ai didi

sockets - boost asio udp waitForReadyRead

转载 作者:行者123 更新时间:2023-12-03 11:53:30 27 4
gpt4 key购买 nike

我正在尝试使用 boost asio udpSocket 实现一个函数,该函数等待数据准备好读取,或者等待超时到期。

使用 asyc_read 和 async_wait,我可以做类似的事情,但我必须读取数据。我也想做 不读取数据

这将允许在许多情况下更轻松地使用 udpSocket 类,但鉴于 udpSocket 接口(interface),我无法弄清楚如何实现这样的功能,而无需手动缓冲数据并重写 sync_read 函数

最好的,dd

最佳答案

尝试调用async_receive ( link ) 使用选项 message_peek (link)。这样,您可以像您想要的那样设置超时限制读取,但无需从接收缓冲区中提取任何数据。

更多详情,请阅读 MSDN description of MSG_PEEK (这是 message_peek 的 Windows 特定实现...您需要向下滚动到文章底部)。这应该可以让您更详细地了解它是如何工作的,尽管您应该查阅系统的文档以绝对确定。

关于sockets - boost asio udp waitForReadyRead,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1728524/

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