<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>io_service::run (1 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="../run.html" title="io_service::run">
<link rel="prev" href="../run.html" title="io_service::run">
<link rel="next" href="overload2.html" title="io_service::run (2 of 2 overloads)">
</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="../run.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../run.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="overload2.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.io_service.run.overload1"></a><a class="link" href="overload1.html" title="io_service::run (1 of 2 overloads)">io_service::run
          (1 of 2 overloads)</a>
</h5></div></div></div>
<p>
            Run the <a class="link" href="../../io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a> object's event processing
            loop.
          </p>
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">run</span><span class="special">();</span>
</pre>
<p>
            The <code class="computeroutput"><span class="identifier">run</span><span class="special">()</span></code>
            function blocks until all work has finished and there are no more handlers
            to be dispatched, or until the <a class="link" href="../../io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a> has been stopped.
          </p>
<p>
            Multiple threads may call the <code class="computeroutput"><span class="identifier">run</span><span class="special">()</span></code> function to set up a pool of threads
            from which the <a class="link" href="../../io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a> may execute handlers.
            All threads that are waiting in the pool are equivalent and the <a class="link" href="../../io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a>
            may choose any one of them to invoke a handler.
          </p>
<p>
            The <code class="computeroutput"><span class="identifier">run</span><span class="special">()</span></code>
            function may be safely called again once it has completed only after
            a call to <code class="computeroutput"><span class="identifier">reset</span><span class="special">()</span></code>.
          </p>
<a name="boost_asio.reference.io_service.run.overload1.return_value"></a><h6>
<a name="id1161584"></a>
            <a class="link" href="overload1.html#boost_asio.reference.io_service.run.overload1.return_value">Return
            Value</a>
          </h6>
<p>
            The number of handlers that were executed.
          </p>
<a name="boost_asio.reference.io_service.run.overload1.exceptions"></a><h6>
<a name="id1161611"></a>
            <a class="link" href="overload1.html#boost_asio.reference.io_service.run.overload1.exceptions">Exceptions</a>
          </h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term">boost::system::system_error</span></dt>
<dd><p>
                  Thrown on failure.
                </p></dd>
</dl>
</div>
<a name="boost_asio.reference.io_service.run.overload1.remarks"></a><h6>
<a name="id1161652"></a>
            <a class="link" href="overload1.html#boost_asio.reference.io_service.run.overload1.remarks">Remarks</a>
          </h6>
<p>
            The <code class="computeroutput"><span class="identifier">run</span><span class="special">()</span></code>
            function must not be called from a thread that is currently calling one
            of <code class="computeroutput"><span class="identifier">run</span><span class="special">()</span></code>,
            <code class="computeroutput"><span class="identifier">run_one</span><span class="special">()</span></code>,
            <code class="computeroutput"><span class="identifier">poll</span><span class="special">()</span></code>
            or <code class="computeroutput"><span class="identifier">poll_one</span><span class="special">()</span></code>
            on the same <a class="link" href="../../io_service.html" title="io_service"><code class="computeroutput"><span class="identifier">io_service</span></code></a> object.
          </p>
<p>
            The <code class="computeroutput"><span class="identifier">poll</span><span class="special">()</span></code>
            function may also be used to dispatch ready handlers, but without blocking.
          </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="../run.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../run.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="overload2.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
