boost/doc/html/boost_asio/reference/AsyncReadStream.html
2021-10-05 21:37:46 +02:00

137 lines
7.2 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Buffer-oriented asynchronous read stream requirements</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../reference.html" title="Reference">
<link rel="prev" href="AsyncRandomAccessWriteDevice.html" title="Buffer-oriented asynchronous random-access write device requirements">
<link rel="next" href="AsyncWriteStream.html" title="Buffer-oriented asynchronous write stream requirements">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="AsyncRandomAccessWriteDevice.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="AsyncWriteStream.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="boost_asio.reference.AsyncReadStream"></a><a class="link" href="AsyncReadStream.html" title="Buffer-oriented asynchronous read stream requirements">Buffer-oriented
asynchronous read stream requirements</a>
</h3></div></div></div>
<p>
A type <code class="computeroutput">X</code> meets the <code class="computeroutput">AsyncReadStream</code> requirements
if it satisfies the requirements listed below.
</p>
<p>
In the table below, <code class="computeroutput">a</code> denotes a value of type <code class="computeroutput">X</code>,
<code class="computeroutput">mb</code> denotes a (possibly const) value satisfying the <a class="link" href="MutableBufferSequence.html" title="Mutable buffer sequence requirements"><code class="computeroutput">MutableBufferSequence</code></a>
requirements, and <code class="computeroutput">t</code> is a completion token.
</p>
<div class="table">
<a name="boost_asio.reference.AsyncReadStream.t0"></a><p class="title"><b>Table 4. AsyncReadStream requirements</b></p>
<div class="table-contents"><table class="table" summary="AsyncReadStream requirements">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
operation
</p>
</th>
<th>
<p>
type
</p>
</th>
<th>
<p>
semantics, pre/post-conditions
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput">a.get_executor()</code>
</p>
</td>
<td>
<p>
A type satisfying the <a class="link" href="Executor1.html" title="Executor requirements">Executor
requirements</a>.
</p>
</td>
<td>
<p>
Returns the associated I/O executor.
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput">a.async_read_some(mb,t)</code>
</p>
</td>
<td>
<p>
The return type is determined according to the requirements for
an <a class="link" href="asynchronous_operations.html" title="Requirements on asynchronous operations">asynchronous
operation</a>.
</p>
</td>
<td>
<p>
Meets the requirements for a <a class="link" href="read_write_operations.html" title="Requirements on read and write operations">read
operation</a> and an <a class="link" href="asynchronous_operations.html" title="Requirements on asynchronous operations">asynchronous
operation</a> with completion signature <code class="computeroutput">void(error_code
ec, size_t n)</code>.<br> <br> If <code class="computeroutput">buffer_size(mb) &gt;
0</code>, initiates an asynchronous operation to read one or more
bytes of data from the stream <code class="computeroutput">a</code> into the buffer sequence
<code class="computeroutput">mb</code>. If successful, <code class="computeroutput">ec</code> is set such that
<code class="computeroutput">!ec</code> is <code class="computeroutput">true</code>, and <code class="computeroutput">n</code> is the
number of bytes read. If an error occurred, <code class="computeroutput">ec</code> is
set such that <code class="computeroutput">!!ec</code> is <code class="computeroutput">true</code>, and <code class="computeroutput">n</code>
is 0. If all data has been read from the stream, and the stream
performed an orderly shutdown, <code class="computeroutput">ec</code> is <code class="computeroutput">stream_errc::eof</code>
and <code class="computeroutput">n</code> is 0.<br> <br> If <code class="computeroutput">buffer_size(mb)
== 0</code>, the operation completes immediately. <code class="computeroutput">ec</code>
is set such that <code class="computeroutput">!ec</code> is <code class="computeroutput">true</code>, and <code class="computeroutput">n</code>
is 0.
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<br class="table-break">
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2003-2021 Christopher
M. Kohlhoff<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="AsyncRandomAccessWriteDevice.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="AsyncWriteStream.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>