<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Condition Variables</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter 1. Fiber">
<link rel="up" href="../synchronization.html" title="Synchronization">
<link rel="prev" href="mutex_types.html" title="Mutex Types">
</h3></div></div></div>
<h5>
<a name="fiber.synchronization.conditions.h0"></a>
- <span><a name="fiber.synchronization.conditions.synopsis"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.synopsis">Synopsis</a>
+ <span class="phrase"><a name="fiber.synchronization.conditions.synopsis"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.synopsis">Synopsis</a>
</h5>
<pre class="programlisting"><span class="keyword">enum</span> <span class="keyword">class</span> <span class="identifier">cv_status</span><span class="special">;</span> <span class="special">{</span>
<span class="identifier">no_timeout</span><span class="special">,</span>
</p>
<a name="condition_variable_spurious_wakeups"></a><h5>
<a name="fiber.synchronization.conditions.h1"></a>
- <span><a name="fiber.synchronization.conditions.no_spurious_wakeups"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.no_spurious_wakeups">No Spurious
+ <span class="phrase"><a name="fiber.synchronization.conditions.no_spurious_wakeups"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.no_spurious_wakeups">No Spurious
Wakeups</a>
</h5>
<p>
</p>
<a name="class_cv_status"></a><h5>
<a name="fiber.synchronization.conditions.h2"></a>
- <span><a name="fiber.synchronization.conditions.enumeration__code__phrase_role__identifier__cv_status__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.enumeration__code__phrase_role__identifier__cv_status__phrase___code_">Enumeration
+ <span class="phrase"><a name="fiber.synchronization.conditions.enumeration__code__phrase_role__identifier__cv_status__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.enumeration__code__phrase_role__identifier__cv_status__phrase___code_">Enumeration
<code class="computeroutput"><span class="identifier">cv_status</span></code></a>
</h5>
<p>
</pre>
<h5>
<a name="fiber.synchronization.conditions.h3"></a>
- <span><a name="fiber.synchronization.conditions._code__phrase_role__identifier__no_timeout__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions._code__phrase_role__identifier__no_timeout__phrase___code_"><code class="computeroutput"><span class="identifier">no_timeout</span></code></a>
+ <span class="phrase"><a name="fiber.synchronization.conditions._code__phrase_role__identifier__no_timeout__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions._code__phrase_role__identifier__no_timeout__phrase___code_"><code class="computeroutput"><span class="identifier">no_timeout</span></code></a>
</h5>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
The condition variable was awakened with <code class="computeroutput"><span class="identifier">notify_one</span></code>
</div>
<h5>
<a name="fiber.synchronization.conditions.h4"></a>
- <span><a name="fiber.synchronization.conditions._code__phrase_role__identifier__timeout__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions._code__phrase_role__identifier__timeout__phrase___code_"><code class="computeroutput"><span class="identifier">timeout</span></code></a>
+ <span class="phrase"><a name="fiber.synchronization.conditions._code__phrase_role__identifier__timeout__phrase___code_"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions._code__phrase_role__identifier__timeout__phrase___code_"><code class="computeroutput"><span class="identifier">timeout</span></code></a>
</h5>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
The condition variable was awakened by timeout.
</p>
<h5>
<a name="class_condition_variable_any_bridgehead"></a>
- <span><a name="class_condition_variable_any"></a></span>
+ <span class="phrase"><a name="class_condition_variable_any"></a></span>
<a class="link" href="conditions.html#class_condition_variable_any">Class
<code class="computeroutput">condition_variable_any</code></a>
</h5>
</pre>
<h5>
<a name="fiber.synchronization.conditions.h5"></a>
- <span><a name="fiber.synchronization.conditions.constructor"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.constructor">Constructor</a>
+ <span class="phrase"><a name="fiber.synchronization.conditions.constructor"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.constructor">Constructor</a>
</h5>
<pre class="programlisting">condition_variable_any<span class="special">()</span>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
Creates the object.
</div>
<h5>
<a name="fiber.synchronization.conditions.h6"></a>
- <span><a name="fiber.synchronization.conditions.destructor"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.destructor">Destructor</a>
+ <span class="phrase"><a name="fiber.synchronization.conditions.destructor"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.destructor">Destructor</a>
</h5>
<pre class="programlisting"><span class="special">~</span>condition_variable_any<span class="special">()</span>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
All fibers waiting on <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> have been notified by a call to
</p>
<h5>
<a name="condition_variable_any_notify_one_bridgehead"></a>
- <span><a name="condition_variable_any_notify_one"></a></span>
+ <span class="phrase"><a name="condition_variable_any_notify_one"></a></span>
<a class="link" href="conditions.html#condition_variable_any_notify_one">Member
function <code class="computeroutput">notify_one</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
If any fibers are currently <a class="link" href="../overview.html#blocking"><span class="emphasis"><em>blocked</em></span></a>
</p>
<h5>
<a name="condition_variable_any_notify_all_bridgehead"></a>
- <span><a name="condition_variable_any_notify_all"></a></span>
+ <span class="phrase"><a name="condition_variable_any_notify_all"></a></span>
<a class="link" href="conditions.html#condition_variable_any_notify_all">Member
function <code class="computeroutput">notify_all</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
If any fibers are currently <a class="link" href="../overview.html#blocking"><span class="emphasis"><em>blocked</em></span></a>
</p>
<h5>
<a name="condition_variable_any_wait_bridgehead"></a>
- <span><a name="condition_variable_any_wait"></a></span>
+ <span class="phrase"><a name="condition_variable_any_wait"></a></span>
<a class="link" href="conditions.html#condition_variable_any_wait">Templated
member function <code class="computeroutput">wait</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the
</p>
<h5>
<a name="condition_variable_any_wait_until_bridgehead"></a>
- <span><a name="condition_variable_any_wait_until"></a></span>
+ <span class="phrase"><a name="condition_variable_any_wait_until"></a></span>
<a class="link" href="conditions.html#condition_variable_any_wait_until">Templated
member function <code class="computeroutput">wait_until</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the
</p>
<h5>
<a name="condition_variable_any_wait_for_bridgehead"></a>
- <span><a name="condition_variable_any_wait_for"></a></span>
+ <span class="phrase"><a name="condition_variable_any_wait_for"></a></span>
<a class="link" href="conditions.html#condition_variable_any_wait_for">Templated
member function <code class="computeroutput">wait_for</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the
</p>
<h5>
<a name="class_condition_variable_bridgehead"></a>
- <span><a name="class_condition_variable"></a></span>
+ <span class="phrase"><a name="class_condition_variable"></a></span>
<a class="link" href="conditions.html#class_condition_variable">Class
<code class="computeroutput">condition_variable</code></a>
</h5>
</pre>
<h5>
<a name="fiber.synchronization.conditions.h7"></a>
- <span><a name="fiber.synchronization.conditions.constructor0"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.constructor0">Constructor</a>
+ <span class="phrase"><a name="fiber.synchronization.conditions.constructor0"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.constructor0">Constructor</a>
</h5>
<pre class="programlisting">condition_variable<span class="special">()</span>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
Creates the object.
</div>
<h5>
<a name="fiber.synchronization.conditions.h8"></a>
- <span><a name="fiber.synchronization.conditions.destructor0"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.destructor0">Destructor</a>
+ <span class="phrase"><a name="fiber.synchronization.conditions.destructor0"></a></span><a class="link" href="conditions.html#fiber.synchronization.conditions.destructor0">Destructor</a>
</h5>
<pre class="programlisting"><span class="special">~</span>condition_variable<span class="special">()</span>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
All fibers waiting on <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> have been notified by a call to
</p>
<h5>
<a name="condition_variable_notify_one_bridgehead"></a>
- <span><a name="condition_variable_notify_one"></a></span>
+ <span class="phrase"><a name="condition_variable_notify_one"></a></span>
<a class="link" href="conditions.html#condition_variable_notify_one">Member
function <code class="computeroutput">notify_one</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
If any fibers are currently <a class="link" href="../overview.html#blocking"><span class="emphasis"><em>blocked</em></span></a>
</p>
<h5>
<a name="condition_variable_notify_all_bridgehead"></a>
- <span><a name="condition_variable_notify_all"></a></span>
+ <span class="phrase"><a name="condition_variable_notify_all"></a></span>
<a class="link" href="conditions.html#condition_variable_notify_all">Member
function <code class="computeroutput">notify_all</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Effects:</span></dt>
<dd><p>
If any fibers are currently <a class="link" href="../overview.html#blocking"><span class="emphasis"><em>blocked</em></span></a>
</p>
<h5>
<a name="condition_variable_wait_bridgehead"></a>
- <span><a name="condition_variable_wait"></a></span>
+ <span class="phrase"><a name="condition_variable_wait"></a></span>
<a class="link" href="conditions.html#condition_variable_wait">Templated
member function <code class="computeroutput">wait</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the
</p>
<h5>
<a name="condition_variable_wait_until_bridgehead"></a>
- <span><a name="condition_variable_wait_until"></a></span>
+ <span class="phrase"><a name="condition_variable_wait_until"></a></span>
<a class="link" href="conditions.html#condition_variable_wait_until">Templated
member function <code class="computeroutput">wait_until</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the
</p>
<h5>
<a name="condition_variable_wait_for_bridgehead"></a>
- <span><a name="condition_variable_wait_for"></a></span>
+ <span class="phrase"><a name="condition_variable_wait_for"></a></span>
<a class="link" href="conditions.html#condition_variable_wait_for">Templated
member function <code class="computeroutput">wait_for</code>()</a>
</h5>
</pre>
<div class="variablelist">
<p class="title"><b></b></p>
-<dl>
+<dl class="variablelist">
<dt><span class="term">Precondition:</span></dt>
<dd><p>
<code class="computeroutput"><span class="identifier">lk</span></code> is locked by the