|
| 1 | +<!DOCTYPE html> |
| 2 | +<html lang="en"> |
| 3 | +<head> |
| 4 | + <meta charset="UTF-8" /> |
| 5 | + <title>quickpool::TodoList class | RcppThread R-friendly |
| 6 | +threading |
| 7 | +in |
| 8 | +C++</title> |
| 9 | + <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400i,600,600i%7CSource+Code+Pro:400,400i,600" /> |
| 10 | + <link rel="stylesheet" href="m-dark+documentation.compiled.css" /> |
| 11 | + <link rel="icon" href="favicon-dark.png" type="image/png" /> |
| 12 | + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| 13 | + <meta name="theme-color" content="#22272e" /> |
| 14 | +</head> |
| 15 | +<body> |
| 16 | +<header><nav id="navigation"> |
| 17 | + <div class="m-container"> |
| 18 | + <div class="m-row"> |
| 19 | + <span id="m-navbar-brand" class="m-col-t-8 m-col-m-none m-left-m"> |
| 20 | + <a href="https://github.com/tnagler/RcppThread">RcppThread</a> <span class="m-breadcrumb">|</span> <a href="index.html" class="m-thin">R-friendly |
| 21 | +threading |
| 22 | +in |
| 23 | +C++</a> |
| 24 | + </span> |
| 25 | + <div class="m-col-t-4 m-hide-m m-text-right m-nopadr"> |
| 26 | + <a href="#search" class="m-doc-search-icon" title="Search" onclick="return showSearch()"><svg style="height: 0.9rem;" viewBox="0 0 16 16"> |
| 27 | + <path id="m-doc-search-icon-path" d="m6 0c-3.31 0-6 2.69-6 6 0 3.31 2.69 6 6 6 1.49 0 2.85-0.541 3.89-1.44-0.0164 0.338 0.147 0.759 0.5 1.15l3.22 3.79c0.552 0.614 1.45 0.665 2 0.115 0.55-0.55 0.499-1.45-0.115-2l-3.79-3.22c-0.392-0.353-0.812-0.515-1.15-0.5 0.895-1.05 1.44-2.41 1.44-3.89 0-3.31-2.69-6-6-6zm0 1.56a4.44 4.44 0 0 1 4.44 4.44 4.44 4.44 0 0 1-4.44 4.44 4.44 4.44 0 0 1-4.44-4.44 4.44 4.44 0 0 1 4.44-4.44z"/> |
| 28 | + </svg></a> |
| 29 | + <a id="m-navbar-show" href="#navigation" title="Show navigation"></a> |
| 30 | + <a id="m-navbar-hide" href="#" title="Hide navigation"></a> |
| 31 | + </div> |
| 32 | + <div id="m-navbar-collapse" class="m-col-t-12 m-show-m m-col-m-none m-right-m"> |
| 33 | + <div class="m-row"> |
| 34 | + <ol class="m-col-t-6 m-col-m-none"> |
| 35 | + <li><a href="namespaceRcppThread.html">RcppThread</a></li> |
| 36 | + <li><a href="overrides.html">Automatic overrides</a></li> |
| 37 | + </ol> |
| 38 | + <ol class="m-col-t-6 m-col-m-none" start="3"> |
| 39 | + <li><a href="https://github.com/tnagler/RcppThread">GitHub</a></li> |
| 40 | + <li class="m-show-m"><a href="#search" class="m-doc-search-icon" title="Search" onclick="return showSearch()"><svg style="height: 0.9rem;" viewBox="0 0 16 16"> |
| 41 | + <use href="#m-doc-search-icon-path" /> |
| 42 | + </svg></a></li> |
| 43 | + </ol> |
| 44 | + </div> |
| 45 | + </div> |
| 46 | + </div> |
| 47 | + </div> |
| 48 | +</nav></header> |
| 49 | +<main><article> |
| 50 | + <div class="m-container m-container-inflatable"> |
| 51 | + <div class="m-row"> |
| 52 | + <div class="m-col-l-10 m-push-l-1"> |
| 53 | + <h1> |
| 54 | + <span class="m-breadcrumb"><a href="namespacequickpool.html">quickpool</a>::<wbr/></span>TodoList <span class="m-thin">class</span> |
| 55 | + </h1> |
| 56 | + <p>Todo list - a synchronization primitive.</p> |
| 57 | + <div class="m-block m-default"> |
| 58 | + <h3>Contents</h3> |
| 59 | + <ul> |
| 60 | + <li> |
| 61 | + Reference |
| 62 | + <ul> |
| 63 | + <li><a href="#typeless-methods">Constructors, destructors, conversion operators</a></li> |
| 64 | + <li><a href="#pub-methods">Public functions</a></li> |
| 65 | + </ul> |
| 66 | + </li> |
| 67 | + </ul> |
| 68 | + </div> |
| 69 | +<p>Add a task with <code>add()</code>, cross it off with <code>cross()</code>, and wait for all tasks to complete with <code>wait()</code>.</p> |
| 70 | + <section id="typeless-methods"> |
| 71 | + <h2><a href="#typeless-methods">Constructors, destructors, conversion operators</a></h2> |
| 72 | + <dl class="m-doc"> |
| 73 | + <dt> |
| 74 | + <span class="m-doc-wrap-bumper"><a href="#ad900c395f0ce371f6773206dda4e5407" class="m-doc">TodoList</a>(</span><span class="m-doc-wrap">size_t num_tasks = 0) <span class="m-label m-flat m-success">noexcept</span></span> |
| 75 | + </dt> |
| 76 | + <dd></dd> |
| 77 | + </dl> |
| 78 | + </section> |
| 79 | + <section id="pub-methods"> |
| 80 | + <h2><a href="#pub-methods">Public functions</a></h2> |
| 81 | + <dl class="m-doc"> |
| 82 | + <dt> |
| 83 | + <span class="m-doc-wrap-bumper">void <a href="#adb2aa12f95bd70c0d68dab45eb73e19e" class="m-doc">add</a>(</span><span class="m-doc-wrap">size_t num_tasks = 1) <span class="m-label m-flat m-success">noexcept</span></span> |
| 84 | + </dt> |
| 85 | + <dd></dd> |
| 86 | + <dt> |
| 87 | + <span class="m-doc-wrap-bumper">void <a href="#ad23ce5136b646788f476843bd4d2ef54" class="m-doc">cross</a>(</span><span class="m-doc-wrap">size_t num_tasks = 1)</span> |
| 88 | + </dt> |
| 89 | + <dd></dd> |
| 90 | + <dt id="a4fd16a01633911f5b82c80857ce66527"> |
| 91 | + <span class="m-doc-wrap-bumper">auto <a href="#a4fd16a01633911f5b82c80857ce66527" class="m-doc-self">empty</a>(</span><span class="m-doc-wrap">) const -> bool <span class="m-label m-flat m-success">noexcept</span></span> |
| 92 | + </dt> |
| 93 | + <dd>checks whether list is empty.</dd> |
| 94 | + <dt> |
| 95 | + <span class="m-doc-wrap-bumper">void <a href="#a6711794e2f9f91e1d34f64f82b6cf7f2" class="m-doc">wait</a>(</span><span class="m-doc-wrap">size_t millis = 0)</span> |
| 96 | + </dt> |
| 97 | + <dd></dd> |
| 98 | + <dt> |
| 99 | + <span class="m-doc-wrap-bumper">void <a href="#a80d8d12098fb46df66f76bc7c6156e7f" class="m-doc">clear</a>(</span><span class="m-doc-wrap">std::exception_ptr eptr = nullptr) <span class="m-label m-flat m-success">noexcept</span></span> |
| 100 | + </dt> |
| 101 | + <dd></dd> |
| 102 | + </dl> |
| 103 | + </section> |
| 104 | + <section> |
| 105 | + <h2>Function documentation</h2> |
| 106 | + <section class="m-doc-details" id="ad900c395f0ce371f6773206dda4e5407"><div> |
| 107 | + <h3> |
| 108 | + <span class="m-doc-wrap-bumper"> quickpool::<wbr />TodoList::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#ad900c395f0ce371f6773206dda4e5407" class="m-doc-self">TodoList</a>(</span><span class="m-doc-wrap">size_t num_tasks = 0) <span class="m-label m-success">noexcept</span></span></span> |
| 109 | + </h3> |
| 110 | + <table class="m-table m-fullwidth m-flat"> |
| 111 | + <thead> |
| 112 | + <tr><th colspan="2">Parameters</th></tr> |
| 113 | + </thead> |
| 114 | + <tbody> |
| 115 | + <tr> |
| 116 | + <td style="width: 1%">num_tasks</td> |
| 117 | + <td>initial number of tasks.</td> |
| 118 | + </tr> |
| 119 | + </tbody> |
| 120 | + </table> |
| 121 | +<p>constructs the todo list.</p> |
| 122 | + </div></section> |
| 123 | + <section class="m-doc-details" id="adb2aa12f95bd70c0d68dab45eb73e19e"><div> |
| 124 | + <h3> |
| 125 | + <span class="m-doc-wrap-bumper">void quickpool::<wbr />TodoList::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#adb2aa12f95bd70c0d68dab45eb73e19e" class="m-doc-self">add</a>(</span><span class="m-doc-wrap">size_t num_tasks = 1) <span class="m-label m-success">noexcept</span></span></span> |
| 126 | + </h3> |
| 127 | + <table class="m-table m-fullwidth m-flat"> |
| 128 | + <thead> |
| 129 | + <tr><th colspan="2">Parameters</th></tr> |
| 130 | + </thead> |
| 131 | + <tbody> |
| 132 | + <tr> |
| 133 | + <td style="width: 1%">num_tasks</td> |
| 134 | + <td>add that many tasks to the list.</td> |
| 135 | + </tr> |
| 136 | + </tbody> |
| 137 | + </table> |
| 138 | +<p>adds tasks to the list.</p> |
| 139 | + </div></section> |
| 140 | + <section class="m-doc-details" id="ad23ce5136b646788f476843bd4d2ef54"><div> |
| 141 | + <h3> |
| 142 | + <span class="m-doc-wrap-bumper">void quickpool::<wbr />TodoList::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#ad23ce5136b646788f476843bd4d2ef54" class="m-doc-self">cross</a>(</span><span class="m-doc-wrap">size_t num_tasks = 1)</span></span> |
| 143 | + </h3> |
| 144 | + <table class="m-table m-fullwidth m-flat"> |
| 145 | + <thead> |
| 146 | + <tr><th colspan="2">Parameters</th></tr> |
| 147 | + </thead> |
| 148 | + <tbody> |
| 149 | + <tr> |
| 150 | + <td style="width: 1%">num_tasks</td> |
| 151 | + <td>cross that many tasks to the list.</td> |
| 152 | + </tr> |
| 153 | + </tbody> |
| 154 | + </table> |
| 155 | +<p>crosses tasks from the list.</p> |
| 156 | + </div></section> |
| 157 | + <section class="m-doc-details" id="a6711794e2f9f91e1d34f64f82b6cf7f2"><div> |
| 158 | + <h3> |
| 159 | + <span class="m-doc-wrap-bumper">void quickpool::<wbr />TodoList::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a6711794e2f9f91e1d34f64f82b6cf7f2" class="m-doc-self">wait</a>(</span><span class="m-doc-wrap">size_t millis = 0)</span></span> |
| 160 | + </h3> |
| 161 | + <table class="m-table m-fullwidth m-flat"> |
| 162 | + <thead> |
| 163 | + <tr><th colspan="2">Parameters</th></tr> |
| 164 | + </thead> |
| 165 | + <tbody> |
| 166 | + <tr> |
| 167 | + <td style="width: 1%">millis</td> |
| 168 | + <td>if > 0; waiting aborts after waiting that many milliseconds.</td> |
| 169 | + </tr> |
| 170 | + </tbody> |
| 171 | + </table> |
| 172 | +<p>waits for the list to be empty.</p> |
| 173 | + </div></section> |
| 174 | + <section class="m-doc-details" id="a80d8d12098fb46df66f76bc7c6156e7f"><div> |
| 175 | + <h3> |
| 176 | + <span class="m-doc-wrap-bumper">void quickpool::<wbr />TodoList::<wbr /></span><span class="m-doc-wrap"><span class="m-doc-wrap-bumper"><a href="#a80d8d12098fb46df66f76bc7c6156e7f" class="m-doc-self">clear</a>(</span><span class="m-doc-wrap">std::exception_ptr eptr = nullptr) <span class="m-label m-success">noexcept</span></span></span> |
| 177 | + </h3> |
| 178 | + <table class="m-table m-fullwidth m-flat"> |
| 179 | + <thead> |
| 180 | + <tr><th colspan="2">Parameters</th></tr> |
| 181 | + </thead> |
| 182 | + <tbody> |
| 183 | + <tr> |
| 184 | + <td style="width: 1%">eptr</td> |
| 185 | + <td>(optional) pointer to an active exception to be rethrown by a waiting thread; typically retrieved from <code>std::current_exception()</code>.</td> |
| 186 | + </tr> |
| 187 | + </tbody> |
| 188 | + </table> |
| 189 | +<p>clears the list.</p> |
| 190 | + </div></section> |
| 191 | + </section> |
| 192 | + </div> |
| 193 | + </div> |
| 194 | + </div> |
| 195 | +</article></main> |
| 196 | +<div class="m-doc-search" id="search"> |
| 197 | + <a href="#!" onclick="return hideSearch()"></a> |
| 198 | + <div class="m-container"> |
| 199 | + <div class="m-row"> |
| 200 | + <div class="m-col-m-8 m-push-m-2"> |
| 201 | + <div class="m-doc-search-header m-text m-small"> |
| 202 | + <div><span class="m-label m-default">Tab</span> / <span class="m-label m-default">T</span> to search, <span class="m-label m-default">Esc</span> to close</div> |
| 203 | + <div id="search-symbolcount">…</div> |
| 204 | + </div> |
| 205 | + <div class="m-doc-search-content"> |
| 206 | + <form> |
| 207 | + <input type="search" name="q" id="search-input" placeholder="Loading …" disabled="disabled" autofocus="autofocus" autocomplete="off" spellcheck="false" /> |
| 208 | + </form> |
| 209 | + <noscript class="m-text m-danger m-text-center">Unlike everything else in the docs, the search functionality <em>requires</em> JavaScript.</noscript> |
| 210 | + <div id="search-help" class="m-text m-dim m-text-center"> |
| 211 | + <p class="m-noindent">Search for symbols, directories, files, pages, OpenGL, GLSL, Vulkan and OpenAL APIs. You can omit any prefix from the symbol or file path; adding a <code>:</code> or <code>/</code> suffix lists all members of given symbol or directory.</p> <p class="m-noindent">Use <span class="m-label m-dim">↓</span> / <span class="m-label m-dim">↑</span> to navigate through the list, <span class="m-label m-dim">Enter</span> to go. <span class="m-label m-dim">Tab</span> autocompletes common prefix, you can copy a link to the result using <span class="m-label m-dim">⌘</span> <span class="m-label m-dim">L</span> while <span class="m-label m-dim">⌘</span> <span class="m-label m-dim">M</span> produces a Markdown link.</p> |
| 212 | + </div> |
| 213 | + <div id="search-notfound" class="m-text m-warning m-text-center">Sorry, nothing was found.</div> |
| 214 | + <ul id="search-results"></ul> |
| 215 | + </div> |
| 216 | + </div> |
| 217 | + </div> |
| 218 | + </div> |
| 219 | +</div> |
| 220 | +<script src="search-v1.js"></script> |
| 221 | +<script src="searchdata-v1.js" async="async"></script> |
| 222 | +<footer><nav> |
| 223 | + <div class="m-container"> |
| 224 | + <div class="m-row"> |
| 225 | + <div class="m-col-l-10 m-push-l-1"> |
| 226 | + <p>RcppThread docs. copyright © <a href=" http://tnagler.com/" >Thomas Nagler </a> 2021. <br />Generated by <a href=" https://doxygen.org/" >Doxygen </a> 1.8.17 and <a href=" https://mcss.mosra.cz/" >m.css </a>. Contact the author via <a href=" https://github.com/tnagler/RcppThread" >GitHub </a> or <a href=" mailto:[email protected]" >e-mail </a> |
| 227 | + </div> |
| 228 | + </div> |
| 229 | + </div> |
| 230 | +</nav></footer> |
| 231 | +</body> |
| 232 | +</html> |
0 commit comments