1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>post (1 of 3 overloads)</title> 5<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../../../boost_asio.html" title="Boost.Asio"> 8<link rel="up" href="../post.html" title="post"> 9<link rel="prev" href="../post.html" title="post"> 10<link rel="next" href="overload2.html" title="post (2 of 3 overloads)"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr> 14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> 15<td align="center"><a href="../../../../../index.html">Home</a></td> 16<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> 17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 19<td align="center"><a href="../../../../../more/index.htm">More</a></td> 20</tr></table> 21<hr> 22<div class="spirit-nav"> 23<a accesskey="p" href="../post.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../post.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> 24</div> 25<div class="section"> 26<div class="titlepage"><div><div><h4 class="title"> 27<a name="boost_asio.reference.post.overload1"></a><a class="link" href="overload1.html" title="post (1 of 3 overloads)">post (1 of 3 overloads)</a> 28</h4></div></div></div> 29<p> 30 Submits a completion token or function object for execution. 31 </p> 32<pre class="programlisting">template< 33 typename CompletionToken> 34<a class="link" href="../asynchronous_operations.html#boost_asio.reference.asynchronous_operations.automatic_deduction_of_initiating_function_return_type"><span class="emphasis"><em>DEDUCED</em></span></a> post( 35 CompletionToken && token); 36</pre> 37<p> 38 This function submits an object for execution using the object's associated 39 executor. The function object is queued for execution, and is never called 40 from the current thread prior to returning from <code class="computeroutput">post()</code>. 41 </p> 42<p> 43 The use of <code class="computeroutput">post()</code>, rather than <a class="link" href="../defer.html" title="defer"><code class="computeroutput">defer</code></a> 44 , indicates the caller's preference that the function object be eagerly 45 queued for execution. 46 </p> 47<p> 48 This function has the following effects: 49 </p> 50<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 51<li class="listitem"> 52 Constructs a function object handler of type <code class="computeroutput">Handler</code>, 53 initialized with <code class="computeroutput">handler(forward<CompletionToken>(token))</code>. 54 </li> 55<li class="listitem"> 56 Constructs an object <code class="computeroutput">result</code> of type <code class="computeroutput">async_result<Handler></code>, 57 initializing the object as <code class="computeroutput">result(handler)</code>. 58 </li> 59<li class="listitem"> 60 Obtains the handler's associated executor object <code class="computeroutput">ex</code> by 61 performing <code class="computeroutput">get_associated_executor(handler)</code>. 62 </li> 63<li class="listitem"> 64 Obtains the handler's associated allocator object <code class="computeroutput">alloc</code> 65 by performing <code class="computeroutput">get_associated_allocator(handler)</code>. 66 </li> 67<li class="listitem"> 68 Performs <code class="computeroutput">ex.post(std::move(handler), alloc)</code>. 69 </li> 70<li class="listitem"> 71 Returns <code class="computeroutput">result.get()</code>. 72 </li> 73</ul></div> 74</div> 75<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 76<td align="left"></td> 77<td align="right"><div class="copyright-footer">Copyright © 2003-2020 Christopher M. 78 Kohlhoff<p> 79 Distributed under the Boost Software License, Version 1.0. (See accompanying 80 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>) 81 </p> 82</div></td> 83</tr></table> 84<hr> 85<div class="spirit-nav"> 86<a accesskey="p" href="../post.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../post.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> 87</div> 88</body> 89</html> 90