Networking TS

PrevUpHomeNext

transfer_exactly

Return a completion condition function object that indicates that a read or write operation should continue until an exact number of bytes has been transferred, or until an error occurs.

unspecified transfer_exactly(
    std::size_t size);

This function is used to create an object, of unspecified type, that meets CompletionCondition requirements.

Example

Reading until a buffer is full or contains exactly 64 bytes:

boost::array<char, 128> buf;
std::error_code ec;
std::size_t n = std::experimental::net::read(
    sock, std::experimental::net::buffer(buf),
    std::experimental::net::transfer_exactly(64), ec);
if (ec)
{
  // An error occurred.
}
else
{
  // n == 64
}

PrevUpHomeNext