mirror of
https://github.com/c-cube/ocaml-containers.git
synced 2025-12-06 11:15:31 -05:00
6 lines
No EOL
3 KiB
HTML
6 lines
No EOL
3 KiB
HTML
<!DOCTYPE html>
|
|
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Barrier (containers.thread.CCThread.Barrier)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><meta name="generator" content="doc-ock-html v1.0.0-1-g1fc9bf0"/></head><body><nav id="top"><a href="../index.html">Up</a> — <span class="package">package <a href="../../index.html">containers.thread</a></span></nav><header><h1><span class="keyword">Module</span> <span class="module-path">CCThread.Barrier</span></h1></header><div class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><div class="def type"><code><span class="keyword">type </span>t</code><code></code><code></code></div><div class="doc"><p>Barrier, used to synchronize threads</p></div></div><div class="spec val" id="val-create"><a href="#val-create" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>create : unit <span class="keyword">‑></span> <a href="index.html#type-t">t</a></code></div><div class="doc"><p>Create a barrier.</p></div></div><div class="spec val" id="val-reset"><a href="#val-reset" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>reset : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p>Reset to initial (non-triggered) state.</p></div></div><div class="spec val" id="val-wait"><a href="#val-wait" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>wait : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p><code class="code">wait b</code> waits for barrier <code class="code">b</code> to be activated by <code class="code">activate b</code>.
|
|
All threads calling this wait until <code class="code">activate b</code> is called.
|
|
If <code class="code">b</code> is already activated, <code class="code">wait b</code> does nothing.</p></div></div><div class="spec val" id="val-activate"><a href="#val-activate" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>activate : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> unit</code></div><div class="doc"><p><code class="code">activate b</code> unblocks all threads that were waiting on <code class="code">b</code>.</p></div></div><div class="spec val" id="val-activated"><a href="#val-activated" class="anchor"></a><div class="def val"><code><span class="keyword">val </span>activated : <a href="index.html#type-t">t</a> <span class="keyword">‑></span> bool</code></div><div class="doc"><p><code class="code">activated b</code> returns <code class="code">true</code> iff <code class="code">activate b</code> was called, and <code class="code">reset b</code>
|
|
was not called since. In other words, <code class="code">activated b = true</code> means
|
|
<code class="code">wait b</code> will not block.</p></div></div></body></html> |