⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 syncthrd_8h-source.html

📁 pwlib开发文档
💻 HTML
📖 第 1 页 / 共 2 页
字号:
00173 };00174 00175 <a name="l00178"></a><a class="code" href="classPIntCondMutex.html">00178</a> <span class="keyword">class </span><a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> : <span class="keyword">public</span> <a class="code" href="classPCondMutex.html">PCondMutex</a>00179 {00180   <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPIntCondMutex.html">PIntCondMutex</a>, <a class="code" href="classPCondMutex.html">PCondMutex</a>);00181 00182   <span class="keyword">public</span>:00185 <a name="l00186"></a><a class="code" href="classPIntCondMutex.html#z413_0">00186</a>     <span class="keyword">enum</span> <a class="code" href="classPIntCondMutex.html#z413_0">Operation</a> {00188       <a class="code" href="classPIntCondMutex.html#z413_0s0">LT</a>,00190       <a class="code" href="classPIntCondMutex.html#z413_0s1">LE</a>,00192       <a class="code" href="classPIntCondMutex.html#z413_0s2">EQ</a>,00194       <a class="code" href="classPIntCondMutex.html#z413_0s3">GE</a>,00196       <a class="code" href="classPIntCondMutex.html#z413_0s4">GT</a>00197     };00198 00202     <a class="code" href="classPIntCondMutex.html#z413_1">PIntCondMutex</a>(00203       <span class="keywordtype">int</span> <a class="code" href="classPIntCondMutex.html#n0">value</a> = 0,            00204       <span class="keywordtype">int</span> <a class="code" href="classPIntCondMutex.html#n1">target</a> = 0,           00205       <a class="code" href="classPIntCondMutex.html#z413_0">Operation</a> <a class="code" href="classPIntCondMutex.html#n2">operation</a> = <a class="code" href="classPIntCondMutex.html#z413_0s1">LE</a>  00206     );00208 00214     <span class="keywordtype">void</span> <a class="code" href="classPIntCondMutex.html#z415_0">PrintOn</a>(ostream &amp; strm) <span class="keyword">const</span>;00216 00224     <span class="keyword">virtual</span> BOOL <a class="code" href="classPIntCondMutex.html#z417_0">Condition</a>();00225 <a name="l00229"></a><a class="code" href="classPIntCondMutex.html#z417_1">00229</a>     <a class="code" href="classPIntCondMutex.html#z417_1">operator int</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPIntCondMutex.html#n0">value</a>; }00230 00238     <a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> &amp; <a class="code" href="classPIntCondMutex.html#z417_2">operator=</a>(<span class="keywordtype">int</span> newval);00239 00247     <a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> &amp; <a class="code" href="classPIntCondMutex.html#z417_3">operator++</a>();00248 00256     <a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> &amp; <a class="code" href="classPIntCondMutex.html#z417_4">operator+=</a>(<span class="keywordtype">int</span> inc);00257 00265     <a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> &amp; <a class="code" href="classPIntCondMutex.html#z417_5">operator--</a>();00266 00274     <a class="code" href="classPIntCondMutex.html">PIntCondMutex</a> &amp; <a class="code" href="classPIntCondMutex.html#z417_6">operator-=</a>(<span class="keywordtype">int</span> dec);00276 00277 00278   <span class="keyword">protected</span>:<a name="l00279"></a><a class="code" href="classPIntCondMutex.html#n0">00279</a>     <span class="keywordtype">int</span> <a class="code" href="classPIntCondMutex.html#n0">value</a>, <a class="code" href="classPIntCondMutex.html#n1">target</a>;<a name="l00280"></a><a class="code" href="classPIntCondMutex.html#n2">00280</a>     <a class="code" href="classPIntCondMutex.html#z413_0">Operation</a> <a class="code" href="classPIntCondMutex.html#n2">operation</a>;00281 };00282 00283 <a name="l00291"></a><a class="code" href="classPReadWriteMutex.html">00291</a> <span class="keyword">class </span><a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a> : <span class="keyword">public</span> <a class="code" href="classPObject.html">PObject</a>00292 {00293   <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a>, <a class="code" href="classPObject.html">PObject</a>);00294   <span class="keyword">public</span>:00297     <a class="code" href="classPReadWriteMutex.html#z419_0">PReadWriteMutex</a>();00299 00306     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#z421_0">StartRead</a>();00307 00310     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#z421_1">EndRead</a>();00311 00327     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#z421_2">StartWrite</a>();00328 00340     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#z421_3">EndWrite</a>();00342 00343   <span class="keyword">protected</span>:<a name="l00344"></a><a class="code" href="classPReadWriteMutex.html#n0">00344</a>     <a class="code" href="classPSemaphore.html">PSemaphore</a> <a class="code" href="classPReadWriteMutex.html#n0">readerSemaphore</a>;<a name="l00345"></a><a class="code" href="classPReadWriteMutex.html#n1">00345</a>     <a class="code" href="classPMutex.html">PMutex</a>     <a class="code" href="classPReadWriteMutex.html#n1">readerMutex</a>;<a name="l00346"></a><a class="code" href="classPReadWriteMutex.html#n2">00346</a>     <span class="keywordtype">unsigned</span>   <a class="code" href="classPReadWriteMutex.html#n2">readerCount</a>;<a name="l00347"></a><a class="code" href="classPReadWriteMutex.html#n3">00347</a>     <a class="code" href="classPMutex.html">PMutex</a>     <a class="code" href="classPReadWriteMutex.html#n3">starvationPreventer</a>;00348 <a name="l00349"></a><a class="code" href="classPReadWriteMutex.html#n4">00349</a>     <a class="code" href="classPSemaphore.html">PSemaphore</a> <a class="code" href="classPReadWriteMutex.html#n4">writerSemaphore</a>;<a name="l00350"></a><a class="code" href="classPReadWriteMutex.html#n5">00350</a>     <a class="code" href="classPMutex.html">PMutex</a>     <a class="code" href="classPReadWriteMutex.html#n5">writerMutex</a>;<a name="l00351"></a><a class="code" href="classPReadWriteMutex.html#n6">00351</a>     <span class="keywordtype">unsigned</span>   <a class="code" href="classPReadWriteMutex.html#n6">writerCount</a>;00352 <a name="l00353"></a><a class="code" href="classPReadWriteMutex_1_1Nest.html">00353</a>     <span class="keyword">class </span><a class="code" href="classPReadWriteMutex_1_1Nest.html">Nest</a> : <span class="keyword">public</span> <a class="code" href="classPObject.html">PObject</a>00354     {00355       <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPReadWriteMutex_1_1Nest.html">Nest</a>, <a class="code" href="classPObject.html">PObject</a>);00356       <a class="code" href="classPReadWriteMutex_1_1Nest.html">Nest</a>() { readerCount = writerCount = 0; }00357       <span class="keywordtype">unsigned</span> readerCount;00358       <span class="keywordtype">unsigned</span> writerCount;00359     };<a name="l00360"></a><a class="code" href="classPReadWriteMutex.html#n7">00360</a>     PDictionary&lt;POrdinalKey, Nest&gt; <a class="code" href="classPReadWriteMutex.html#n7">nestedThreads</a>;<a name="l00361"></a><a class="code" href="classPReadWriteMutex.html#n8">00361</a>     <a class="code" href="classPMutex.html">PMutex</a>                         <a class="code" href="classPReadWriteMutex.html#n8">nestingMutex</a>;00362 00363     <a class="code" href="classPReadWriteMutex_1_1Nest.html">Nest</a> * <a class="code" href="classPReadWriteMutex.html#b0">GetNest</a>() <span class="keyword">const</span>;00364     <a class="code" href="classPReadWriteMutex_1_1Nest.html">Nest</a> &amp; <a class="code" href="classPReadWriteMutex.html#b1">StartNest</a>();00365     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#b2">EndNest</a>();00366     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#b3">InternalStartRead</a>();00367     <span class="keywordtype">void</span> <a class="code" href="classPReadWriteMutex.html#b4">InternalEndRead</a>();00368 };00369 00370 <a name="l00388"></a><a class="code" href="classPReadWaitAndSignal.html">00388</a> <span class="keyword">class </span><a class="code" href="classPReadWaitAndSignal.html">PReadWaitAndSignal</a> {00389   <span class="keyword">public</span>:00394     <a class="code" href="classPReadWaitAndSignal.html#a0">PReadWaitAndSignal</a>(00395       <span class="keyword">const</span> <a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a> &amp; rw,   00396       BOOL start = TRUE    00397     );00402     <a class="code" href="classPReadWaitAndSignal.html#a1">~PReadWaitAndSignal</a>();00403 00404   <span class="keyword">protected</span>:<a name="l00405"></a><a class="code" href="classPReadWaitAndSignal.html#n0">00405</a>     <a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a> &amp; <a class="code" href="classPReadWaitAndSignal.html#n0">mutex</a>;00406 };00407 00408 <a name="l00426"></a><a class="code" href="classPWriteWaitAndSignal.html">00426</a> <span class="keyword">class </span><a class="code" href="classPWriteWaitAndSignal.html">PWriteWaitAndSignal</a> {00427   <span class="keyword">public</span>:00432     <a class="code" href="classPWriteWaitAndSignal.html#a0">PWriteWaitAndSignal</a>(00433       <span class="keyword">const</span> <a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a> &amp; rw,   00434       BOOL start = TRUE    00435     );00440     <a class="code" href="classPWriteWaitAndSignal.html#a1">~PWriteWaitAndSignal</a>();00441 00442   <span class="keyword">protected</span>:<a name="l00443"></a><a class="code" href="classPWriteWaitAndSignal.html#n0">00443</a>     <a class="code" href="classPReadWriteMutex.html">PReadWriteMutex</a> &amp; <a class="code" href="classPWriteWaitAndSignal.html#n0">mutex</a>;00444 };00445 00446 00447 <span class="comment">// End Of File ///////////////////////////////////////////////////////////////</span></pre></div><hr><address style="align: right;"><small>Generated on Wed Sep 29 22:44:12 2004 for PWLib by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -