Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / log / doc / html / boost / log / ipc / reliable_message_queue.html
index c0bbbbf..67aefb0 100644 (file)
                          throw_on_overflow <span class="special">}</span><span class="special">;</span>
 
   <span class="comment">// <a class="link" href="reliable_message_queue.html#boost.log.ipc.reliable_message_queueconstruct-copy-destruct">construct/copy/destruct</a></span>
-  <a class="link" href="reliable_message_queue.html#idm45185961833936-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html#idm45185961831728-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/create_only_tag.html" title="Struct create_only_tag">open_mode::create_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
+  <a class="link" href="reliable_message_queue.html#idm45711343434608-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <a class="link" href="reliable_message_queue.html#idm45711343432400-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/create_only_tag.html" title="Struct create_only_tag">open_mode::create_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
                          <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
                          <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                          <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html#idm45185961821600-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/open_or_create_tag.html" title="Struct open_or_create_tag">open_mode::open_or_create_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
+  <a class="link" href="reliable_message_queue.html#idm45711343422272-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/open_or_create_tag.html" title="Struct open_or_create_tag">open_mode::open_or_create_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
                          <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
                          <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                          <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html#idm45185961811264-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/open_only_tag.html" title="Struct open_only_tag">open_mode::open_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
+  <a class="link" href="reliable_message_queue.html#idm45711343411936-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="../open_mode/open_only_tag.html" title="Struct open_only_tag">open_mode::open_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> 
                          <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                          <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="reliable_message_queue.html#idm45185961803264-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html#idm45185961791472-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> <a class="link" href="reliable_message_queue.html#idm45185961787360-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <a class="link" href="reliable_message_queue.html#idm45185961792624-bb"><span class="special">~</span><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">explicit</span> <a class="link" href="reliable_message_queue.html#idm45711343403936-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
+  <a class="link" href="reliable_message_queue.html#idm45711343392144-bb"><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> <a class="link" href="reliable_message_queue.html#idm45711343388032-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <a class="link" href="reliable_message_queue.html#idm45711343393296-bb"><span class="special">~</span><span class="identifier">reliable_message_queue</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
 
-  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45185961996416-bb">public member functions</a></span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961995856-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961992160-bb"><span class="identifier">create</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
+  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45711343597088-bb">public member functions</a></span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343596528-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343592832-bb"><span class="identifier">create</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
               <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
               <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961981472-bb"><span class="identifier">open_or_create</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343582144-bb"><span class="identifier">open_or_create</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">uint32_t</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> 
                       <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                       <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961970544-bb"><span class="identifier">open</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343571216-bb"><span class="identifier">open</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">overflow_policy</span> <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
             <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45185961961968-bb"><span class="identifier">is_open</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961958752-bb"><span class="identifier">clear</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
-  <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span>  <span class="special">&amp;</span> <a class="link" href="reliable_message_queue.html#idm45185961954032-bb"><span class="identifier">name</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
-  <span class="identifier">uint32_t</span> <a class="link" href="reliable_message_queue.html#idm45185961950576-bb"><span class="identifier">capacity</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
-  <span class="identifier">size_type</span> <a class="link" href="reliable_message_queue.html#idm45185961946720-bb"><span class="identifier">block_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961942864-bb"><span class="identifier">stop_local</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961932736-bb"><span class="identifier">reset_local</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961929344-bb"><span class="identifier">close</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
-  <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45185961923520-bb"><span class="identifier">send</span></a><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45185961909904-bb"><span class="identifier">try_send</span></a><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span>
-  <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45185961896624-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45711343562640-bb"><span class="identifier">is_open</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343559424-bb"><span class="identifier">clear</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
+  <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span>  <span class="special">&amp;</span> <a class="link" href="reliable_message_queue.html#idm45711343554704-bb"><span class="identifier">name</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+  <span class="identifier">uint32_t</span> <a class="link" href="reliable_message_queue.html#idm45711343551248-bb"><span class="identifier">capacity</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+  <span class="identifier">size_type</span> <a class="link" href="reliable_message_queue.html#idm45711343547392-bb"><span class="identifier">block_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343543536-bb"><span class="identifier">stop_local</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343533408-bb"><span class="identifier">reset_local</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343530016-bb"><span class="identifier">close</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45711343524192-bb"><span class="identifier">send</span></a><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45711343510576-bb"><span class="identifier">try_send</span></a><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span>
+  <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45711343497296-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ElementT<span class="special">,</span> <span class="identifier">size_type</span> SizeV<span class="special">&gt;</span> 
-    <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45185961886304-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45185961875408-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45185961865072-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+    <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45711343486976-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="identifier">operation_result</span> <a class="link" href="reliable_message_queue.html#idm45711343476080-bb"><span class="identifier">receive</span></a><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45711343465744-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ElementT<span class="special">,</span> <span class="identifier">size_type</span> SizeV<span class="special">&gt;</span> 
-    <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45185961854944-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
-  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45185961844240-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+    <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45711343455616-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+  <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="reliable_message_queue.html#idm45711343444912-bb"><span class="identifier">try_receive</span></a><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
 
-  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45185961781600-bb">friend functions</a></span>
-  <span class="keyword">friend</span> <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961781040-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">,</span> <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
+  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45711343382272-bb">friend functions</a></span>
+  <span class="keyword">friend</span> <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343381712-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">,</span> <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
 
-  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45185961776656-bb">public static functions</a></span>
-  <span class="keyword">static</span> <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45185961776096-bb"><span class="identifier">remove</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+  <span class="comment">// <a class="link" href="reliable_message_queue.html#idm45711343377328-bb">public static functions</a></span>
+  <span class="keyword">static</span> <span class="keyword">void</span> <a class="link" href="reliable_message_queue.html#idm45711343376768-bb"><span class="identifier">remove</span></a><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
 <span class="special">}</span><span class="special">;</span></pre></div>
 <div class="refsect1">
-<a name="idm46436893757824"></a><h2>Description</h2>
+<a name="idm45554725252592"></a><h2>Description</h2>
 <p>The queue implements a reliable one-way channel of passing messages from one or multiple writers to a single reader. The format of the messages is user-defined and must be consistent across all writers and the reader. The queue does not enforce any specific format of the messages, other than they should be supplied as a contiguous array of bytes.</p>
 <p>The queue internally uses a process-shared storage identified by an <code class="computeroutput"><a class="link" href="object_name.html" title="Class object_name">object_name</a></code> (the queue name). Refer to <code class="computeroutput"><a class="link" href="object_name.html" title="Class object_name">object_name</a></code> documentation for details on restrictions imposed on object names.</p>
 <p>The queue storage is organized as a fixed number of blocks of a fixed size. The block size must be an integer power of 2 and is expressed in bytes. Each written message, together with some metadata added by the queue, consumes an integer number of blocks. Each read message received by the reader releases the blocks allocated for that message. As such the maximum size of a message is slightly less than block size times capacity of the queue. For efficiency, it is recommended to choose block size large enough to accommodate most of the messages to be passed through the queue.</p>
 <p>The queue does not guarantee any particular order of received messages from different writer threads. Messages sent by a particular writer thread will be received in the order of sending.</p>
 <p>Methods of this class are not thread-safe, unless otherwise specified. </p>
 <div class="refsect2">
-<a name="idm46436893747184"></a><h3>
+<a name="idm45554725241952"></a><h3>
 <a name="boost.log.ipc.reliable_message_queueconstruct-copy-destruct"></a><code class="computeroutput">reliable_message_queue</code> 
         public
        construct/copy/destruct</h3>
 <div class="orderedlist"><ol class="orderedlist" type="1">
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961833936-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><a name="idm45711343434608-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>Default constructor. The method constructs an object that is not associated with any message queue.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961831728-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/create_only_tag.html" title="Struct create_only_tag">open_mode::create_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
+<pre class="literallayout"><a name="idm45711343432400-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/create_only_tag.html" title="Struct create_only_tag">open_mode::create_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
                        <span class="identifier">uint32_t</span> capacity<span class="special">,</span> <span class="identifier">size_type</span> block_size<span class="special">,</span> 
                        <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                        <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> perms <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961821600-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/open_or_create_tag.html" title="Struct open_or_create_tag">open_mode::open_or_create_tag</a><span class="special">,</span> 
+<pre class="literallayout"><a name="idm45711343422272-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/open_or_create_tag.html" title="Struct open_or_create_tag">open_mode::open_or_create_tag</a><span class="special">,</span> 
                        <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> <span class="identifier">uint32_t</span> capacity<span class="special">,</span> 
                        <span class="identifier">size_type</span> block_size<span class="special">,</span> 
                        <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961811264-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/open_only_tag.html" title="Struct open_only_tag">open_mode::open_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
+<pre class="literallayout"><a name="idm45711343411936-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="../open_mode/open_only_tag.html" title="Struct open_only_tag">open_mode::open_only_tag</a><span class="special">,</span> <a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
                        <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                        <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> perms <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>
 <p>Constructor. The method is used to construct an object and open the existing message queue. The constructed object will be in running state if the message queue is successfully opened.</p>
 </li>
 <li class="listitem">
 <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> 
-  <span class="keyword">explicit</span> <a name="idm45185961803264-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="identifier">Args</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre>
+  <span class="keyword">explicit</span> <a name="idm45711343403936-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="identifier">Args</span> <span class="keyword">const</span> <span class="special">&amp;</span><span class="special">...</span> args<span class="special">)</span><span class="special">;</span></pre>
 <p>Constructor with named parameters. The method is used to construct an object and create or open the associated message queue. The constructed object will be in running state if the message queue is successfully created.</p>
 <p>The following named parameters are accepted:</p>
 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961791472-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><a name="idm45711343392144-bb"></a><span class="identifier">reliable_message_queue</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>Move constructor. The method move-constructs an object from <code class="computeroutput">other</code>. After the call, the constructed object becomes <code class="computeroutput">other</code>, while <code class="computeroutput">other</code> is left in default constructed state.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> <a name="idm45185961787360-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> <a name="idm45711343388032-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>Move assignment operator. If the object is associated with a message queue, <code class="computeroutput">close()</code> is first called and the precondition to calling <code class="computeroutput">close()</code> applies. After the call, the object becomes <span class="emphasis"><em>that</em></span> while <span class="emphasis"><em>that</em></span> is left in default constructed state.</p>
 <p>
 
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a name="idm45185961792624-bb"></a><span class="special">~</span><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><a name="idm45711343393296-bb"></a><span class="special">~</span><span class="identifier">reliable_message_queue</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
 <p>Destructor. Calls <code class="computeroutput">close()</code>. </p>
 </li>
 </ol></div>
 </div>
 <div class="refsect2">
-<a name="idm46436893607952"></a><h3>
-<a name="idm45185961996416-bb"></a><code class="computeroutput">reliable_message_queue</code> public member functions</h3>
+<a name="idm45554725102816"></a><h3>
+<a name="idm45711343597088-bb"></a><code class="computeroutput">reliable_message_queue</code> public member functions</h3>
 <div class="orderedlist"><ol class="orderedlist" type="1">
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961995856-bb"></a><span class="identifier">swap</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343596528-bb"></a><span class="identifier">swap</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>The method swaps the object with <span class="emphasis"><em>that</em></span>.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961992160-bb"></a><span class="identifier">create</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> <span class="identifier">uint32_t</span> capacity<span class="special">,</span> <span class="identifier">size_type</span> block_size<span class="special">,</span> 
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343592832-bb"></a><span class="identifier">create</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> <span class="identifier">uint32_t</span> capacity<span class="special">,</span> <span class="identifier">size_type</span> block_size<span class="special">,</span> 
             <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
             <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> perms <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>
 <p>The method creates the message queue to be associated with the object. After the call, the object will be in running state if a message queue is successfully created.</p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961981472-bb"></a><span class="identifier">open_or_create</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> <span class="identifier">uint32_t</span> capacity<span class="special">,</span> 
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343582144-bb"></a><span class="identifier">open_or_create</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> <span class="identifier">uint32_t</span> capacity<span class="special">,</span> 
                     <span class="identifier">size_type</span> block_size<span class="special">,</span> 
                     <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
                     <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> perms <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961970544-bb"></a><span class="identifier">open</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343571216-bb"></a><span class="identifier">open</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">,</span> 
           <span class="identifier">overflow_policy</span> oflow_policy <span class="special">=</span> <span class="identifier">block_on_overflow</span><span class="special">,</span> 
           <a class="link" href="../permissions.html" title="Class permissions">permissions</a> <span class="keyword">const</span> <span class="special">&amp;</span> perms <span class="special">=</span> <a class="link" href="../permissions.html" title="Class permissions">permissions</a><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>
 <p>The method opens the existing message queue to be associated with the object. After the call, the object will be in running state if a message queue is successfully opened.</p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45185961961968-bb"></a><span class="identifier">is_open</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711343562640-bb"></a><span class="identifier">is_open</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>Tests whether the object is associated with any message queue.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961958752-bb"></a><span class="identifier">clear</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343559424-bb"></a><span class="identifier">clear</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
 <p>This method empties the associated message queue. Concurrent calls to this method, <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, and <code class="computeroutput">stop_local()</code> are allowed.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span>  <span class="special">&amp;</span> <a name="idm45185961954032-bb"></a><span class="identifier">name</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
+<pre class="literallayout"><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span>  <span class="special">&amp;</span> <a name="idm45711343554704-bb"></a><span class="identifier">name</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
 <p>The method returns the name of the associated message queue.</p>
 <p>
 
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="identifier">uint32_t</span> <a name="idm45185961950576-bb"></a><span class="identifier">capacity</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="identifier">uint32_t</span> <a name="idm45711343551248-bb"></a><span class="identifier">capacity</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
 <p>The method returns the maximum number of allocation blocks the associated message queue can hold. Note that the returned value may be different from the corresponding value passed to the constructor or <code class="computeroutput">open_or_create()</code>, for the message queue may not have been created by this object.</p>
 <p>
 
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="identifier">size_type</span> <a name="idm45185961946720-bb"></a><span class="identifier">block_size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="identifier">size_type</span> <a name="idm45711343547392-bb"></a><span class="identifier">block_size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
 <p>The method returns the allocation block size, in bytes. Each message in the associated message queue consumes an integer number of allocation blocks. Note that the returned value may be different from the corresponding value passed to the constructor or <code class="computeroutput">open_or_create()</code>, for the message queue may not have been created by this object.</p>
 <p>
 
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961942864-bb"></a><span class="identifier">stop_local</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343543536-bb"></a><span class="identifier">stop_local</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
 <p>The method wakes up all threads that are blocked in calls to <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code>. Those calls would then return <code class="computeroutput">operation_result::aborted</code>. Note that, the method does not block until the woken-up threads have actually returned from <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code>. Other means is needed to ensure that calls to <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code> have returned, e.g., joining the threads that might be blocking on the calls.</p>
 <p>The method also puts the object in stopped state. When in stopped state, calls to <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code> will return immediately with return value <code class="computeroutput">operation_result::aborted</code> when they would otherwise block in running state.</p>
 <p>Concurrent calls to this method, <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961932736-bb"></a><span class="identifier">reset_local</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343533408-bb"></a><span class="identifier">reset_local</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
 <p>The method puts the object in running state where calls to <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code> may block. This method is not thread-safe.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">void</span> <a name="idm45185961929344-bb"></a><span class="identifier">close</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">void</span> <a name="idm45711343530016-bb"></a><span class="identifier">close</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
 <p>The method disassociates the associated message queue, if any. No other threads should be using this object before calling this method. The <code class="computeroutput">stop_local()</code> method can be used to have any threads currently blocked in <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code> return, and prevent further calls to them from blocking. Typically, before calling this method, one would first call <code class="computeroutput">stop_local()</code> and then join all threads that might be blocking on <code class="computeroutput">send()</code> or <code class="computeroutput">receive()</code> to ensure that they have returned from the calls. The associated message queue is destroyed if the object represents the last outstanding reference to it.</p>
 <p>
 </p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="identifier">operation_result</span> <a name="idm45185961923520-bb"></a><span class="identifier">send</span><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span> message_data<span class="special">,</span> <span class="identifier">size_type</span> message_size<span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="identifier">operation_result</span> <a name="idm45711343524192-bb"></a><span class="identifier">send</span><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span> message_data<span class="special">,</span> <span class="identifier">size_type</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method sends a message to the associated message queue. When the object is in running state and the queue has no free space for the message, the method either blocks or throws an exception, depending on the overflow policy that was specified on the queue opening/creation. If blocking policy is in effect, the blocking can be interrupted by calling <code class="computeroutput">stop_local()</code>, in which case the method returns <code class="computeroutput">operation_result::aborted</code>. When the object is already in the stopped state, the method does not block but returns immediately with return value <code class="computeroutput">operation_result::aborted</code>.</p>
 <p>It is possible to send an empty message by passing <code class="computeroutput">0</code> to the parameter <code class="computeroutput">message_size</code>.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45185961909904-bb"></a><span class="identifier">try_send</span><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span> message_data<span class="special">,</span> <span class="identifier">size_type</span> message_size<span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711343510576-bb"></a><span class="identifier">try_send</span><span class="special">(</span><span class="keyword">void</span> <span class="keyword">const</span> <span class="special">*</span> message_data<span class="special">,</span> <span class="identifier">size_type</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method performs an attempt to send a message to the associated message queue. The method is non-blocking, and always returns immediately. <code class="computeroutput">boost::system::system_error</code> is thrown for errors resulting from native operating system calls. Note that it is possible to send an empty message by passing <code class="computeroutput">0</code> to the parameter <code class="computeroutput">message_size</code>. Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 
 </li>
 <li class="listitem">
 <pre class="literallayout"><span class="identifier">operation_result</span> 
-<a name="idm45185961896624-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> buffer_size<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
+<a name="idm45711343497296-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> buffer_size<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method takes a message from the associated message queue. When the object is in running state and the queue is empty, the method blocks. The blocking is interrupted when <code class="computeroutput">stop_local()</code> is called, in which case the method returns <code class="computeroutput">operation_result::aborted</code>. When the object is already in the stopped state and the queue is empty, the method does not block but returns immediately with return value <code class="computeroutput">operation_result::aborted</code>.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 </li>
 <li class="listitem">
 <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ElementT<span class="special">,</span> <span class="identifier">size_type</span> SizeV<span class="special">&gt;</span> 
-  <span class="identifier">operation_result</span> <a name="idm45185961886304-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
+  <span class="identifier">operation_result</span> <a name="idm45711343486976-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method takes a message from the associated message queue. When the object is in running state and the queue is empty, the method blocks. The blocking is interrupted when <code class="computeroutput">stop_local()</code> is called, in which case the method returns <code class="computeroutput">operation_result::aborted</code>. When the object is already in the stopped state and the queue is empty, the method does not block but returns immediately with return value <code class="computeroutput">operation_result::aborted</code>.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="identifier">operation_result</span> <a name="idm45185961875408-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span> container<span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="identifier">operation_result</span> <a name="idm45711343476080-bb"></a><span class="identifier">receive</span><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span> container<span class="special">)</span><span class="special">;</span></pre>
 <p>The method takes a message from the associated message queue. When the object is in running state and the queue is empty, the method blocks. The blocking is interrupted when <code class="computeroutput">stop_local()</code> is called, in which case the method returns <code class="computeroutput">operation_result::aborted</code>. When the object is already in the stopped state and the queue is empty, the method does not block but returns immediately with return value <code class="computeroutput">operation_result::aborted</code>.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45185961865072-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> buffer_size<span class="special">,</span> 
+<pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711343465744-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> buffer_size<span class="special">,</span> 
                  <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method performs an attempt to take a message from the associated message queue. The method is non-blocking, and always returns immediately.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 </li>
 <li class="listitem">
 <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ElementT<span class="special">,</span> <span class="identifier">size_type</span> SizeV<span class="special">&gt;</span> 
-  <span class="keyword">bool</span> <a name="idm45185961854944-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
+  <span class="keyword">bool</span> <a name="idm45711343455616-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="identifier">ElementT</span><span class="special">(</span><span class="special">&amp;</span><span class="special">)</span> buffer<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&amp;</span> message_size<span class="special">)</span><span class="special">;</span></pre>
 <p>The method performs an attempt to take a message from the associated message queue. The method is non-blocking, and always returns immediately.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 </table></div>
 </li>
 <li class="listitem">
-<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="keyword">bool</span> <a name="idm45185961844240-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span> container<span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ContainerT<span class="special">&gt;</span> <span class="keyword">bool</span> <a name="idm45711343444912-bb"></a><span class="identifier">try_receive</span><span class="special">(</span><span class="identifier">ContainerT</span> <span class="special">&amp;</span> container<span class="special">)</span><span class="special">;</span></pre>
 <p>The method performs an attempt to take a message from the associated message queue. The method is non-blocking, and always returns immediately.</p>
 <p>Concurrent calls to <code class="computeroutput">send()</code>, <code class="computeroutput">try_send()</code>, <code class="computeroutput">receive()</code>, <code class="computeroutput">try_receive()</code>, <code class="computeroutput">stop_local()</code>, and <code class="computeroutput">clear()</code> are allowed.</p>
 <p>
 </ol></div>
 </div>
 <div class="refsect2">
-<a name="idm46436893232960"></a><h3>
-<a name="idm45185961781600-bb"></a><code class="computeroutput">reliable_message_queue</code> friend functions</h3>
+<a name="idm45554724727696"></a><h3>
+<a name="idm45711343382272-bb"></a><code class="computeroutput">reliable_message_queue</code> friend functions</h3>
 <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
-<pre class="literallayout"><span class="keyword">friend</span> <span class="keyword">void</span> <a name="idm45185961781040-bb"></a><span class="identifier">swap</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> a<span class="special">,</span> <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Swaps the two <code class="computeroutput"><code class="computeroutput"><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a></code></code> objects. </li></ol></div>
+<pre class="literallayout"><span class="keyword">friend</span> <span class="keyword">void</span> <a name="idm45711343381712-bb"></a><span class="identifier">swap</span><span class="special">(</span><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> a<span class="special">,</span> <a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a> <span class="special">&amp;</span> b<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>Swaps the two <code class="computeroutput"><code class="computeroutput"><a class="link" href="reliable_message_queue.html" title="Class reliable_message_queue">reliable_message_queue</a></code></code> objects. </li></ol></div>
 </div>
 <div class="refsect2">
-<a name="idm46436893219392"></a><h3>
-<a name="idm45185961776656-bb"></a><code class="computeroutput">reliable_message_queue</code> public static functions</h3>
+<a name="idm45554724714176"></a><h3>
+<a name="idm45711343377328-bb"></a><code class="computeroutput">reliable_message_queue</code> public static functions</h3>
 <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
-<pre class="literallayout"><span class="keyword">static</span> <span class="keyword">void</span> <a name="idm45185961776096-bb"></a><span class="identifier">remove</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">)</span><span class="special">;</span></pre>
+<pre class="literallayout"><span class="keyword">static</span> <span class="keyword">void</span> <a name="idm45711343376768-bb"></a><span class="identifier">remove</span><span class="special">(</span><a class="link" href="object_name.html" title="Class object_name">object_name</a> <span class="keyword">const</span> <span class="special">&amp;</span> name<span class="special">)</span><span class="special">;</span></pre>
 <p>The method frees system-wide resources, associated with the interprocess queue with the supplied name. The queue referred to by the specified name must not be opened in any process at the point of this call. After this call succeeds a new queue with the specified name can be created.</p>
 <p>This call can be useful to recover from an earlier process misbehavior (e.g. a crash without properly closing the message queue). In this case resources allocated for the interprocess queue may remain allocated after the last process closed the queue, which in turn may prevent creating a new queue with the same name. By calling this method before creating a queue the application can attempt to ensure it starts with a clean slate.</p>
 <p>On some platforms resources associated with the queue are automatically reclaimed by the operating system when the last process using those resources terminates (even if it terminates abnormally). On these platforms this call may be a no-op. However, portable code should still call this method at appropriate places to ensure compatibility with other platforms and future library versions, which may change implementation of the queue.</p>