<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>posix::basic_stream_descriptor::read_some (2 of 2 overloads)</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../read_some.html" title="posix::basic_stream_descriptor::read_some">
<link rel="prev" href="overload1.html" title="posix::basic_stream_descriptor::read_some (1 of 2 overloads)">
<link rel="next" href="../service.html" title="posix::basic_stream_descriptor::service">
</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="overload1.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../read_some.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="../service.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2"></a><a class="link" href="overload2.html" title="posix::basic_stream_descriptor::read_some (2 of 2 overloads)">posix::basic_stream_descriptor::read_some
          (2 of 2 overloads)</a>
</h5></div></div></div>
<p>
            Read some data from the descriptor.
          </p>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
    <span class="keyword">typename</span> <a class="link" href="../../MutableBufferSequence.html" title="Mutable buffer sequence requirements">MutableBufferSequence</a><span class="special">&gt;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">read_some</span><span class="special">(</span>
    <span class="keyword">const</span> <span class="identifier">MutableBufferSequence</span> <span class="special">&amp;</span> <span class="identifier">buffers</span><span class="special">,</span>
    <span class="identifier">boost</span><span class="special">::</span><span class="identifier">system</span><span class="special">::</span><span class="identifier">error_code</span> <span class="special">&amp;</span> <span class="identifier">ec</span><span class="special">);</span>
</pre>
<p>
            This function is used to read data from the stream descriptor. The function
            call will block until one or more bytes of data has been read successfully,
            or until an error occurs.
          </p>
<a name="boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.parameters"></a><h6>
<a name="id1271657"></a>
            <a class="link" href="overload2.html#boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.parameters">Parameters</a>
          </h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term">buffers</span></dt>
<dd><p>
                  One or more buffers into which the data will be read.
                </p></dd>
<dt><span class="term">ec</span></dt>
<dd><p>
                  Set to indicate what error occurred, if any.
                </p></dd>
</dl>
</div>
<a name="boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.return_value"></a><h6>
<a name="id1271716"></a>
            <a class="link" href="overload2.html#boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.return_value">Return
            Value</a>
          </h6>
<p>
            The number of bytes read. Returns 0 if an error occurred.
          </p>
<a name="boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.remarks"></a><h6>
<a name="id1271744"></a>
            <a class="link" href="overload2.html#boost_asio.reference.posix__basic_stream_descriptor.read_some.overload2.remarks">Remarks</a>
          </h6>
<p>
            The read_some operation may not read all of the requested number of bytes.
            Consider using the <a class="link" href="../../read.html" title="read"><code class="computeroutput"><span class="identifier">read</span></code></a> function if you need to
            ensure that the requested amount of data is read before the blocking
            operation completes.
          </p>
</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 &#169; 2003 - 2010 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="overload1.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../read_some.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="../service.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
