我可以将哪些值传递给stream_socket_service :: receive中的message_flags属性

时间:2011-06-24 05:27:56

标签: c++ boost-asio

我正在尝试在boost asio中使用socket::receive来通过网络接收数据。我希望它阻止,直到有一定数量的数据可用。为此,似乎我必须将message_flag参数设置为receive函数,但是我无法找到有关可以传递什么值的信息,以便在某些大小的数据可用之前阻止接收。我只看到它是一个整数。

有人可以告诉我可以传递的有效值是什么吗?

1 个答案:

答案 0 :(得分:2)

  

为此我似乎必须这样做   将message_flag参数设置为   接收功能

这是不正确的。 async_readread免费功能存在重载。它们将根据缓冲区大小读取您请求的字节数:

  

说明

     

这个重载相当于   主叫:

     

升压:: ASIO ::读取(       s,缓冲区,       提高:: ASIO :: transfer_all());