我正在尝试在boost asio中使用socket::receive
来通过网络接收数据。我希望它阻止,直到有一定数量的数据可用。为此,似乎我必须将message_flag
参数设置为receive函数,但是我无法找到有关可以传递什么值的信息,以便在某些大小的数据可用之前阻止接收。我只看到它是一个整数。
有人可以告诉我可以传递的有效值是什么吗?
答案 0 :(得分:2)
为此我似乎必须这样做 将message_flag参数设置为 接收功能
这是不正确的。 async_read或read免费功能存在重载。它们将根据缓冲区大小读取您请求的字节数:
说明
这个重载相当于 主叫:
升压:: ASIO ::读取( s,缓冲区, 提高:: ASIO :: transfer_all());