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

📄 a00489.html

📁 opendds 1.2 最新版 面向分布式实时网络编程
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>OpenDDS: DataBlockLockPool Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li id="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="dirs.html"><span>Directories</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul></div>
<h1>DataBlockLockPool Class Reference</h1><!-- doxytag: class="DataBlockLockPool" -->Holds and distributes locks to be used for locking ACE_Data_Blocks. Currently it does not require returning the locks.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;DataBlockLockPool.h&gt;</code>
<p>
<a href="a00007.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_Lock_Adapter&lt;<br>
 ACE_Thread_Mutex &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#5c4afc8dbba41bbead139333457d8218">DataBlockLockPool</a> (size_t size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#14da0344b027610edb44b19ee829dbe0">~DataBlockLockPool</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#f6f5adecf9b485e314d845a478fa8fff">get_lock</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#b786bfa9a88607b8ba7833335e9b056c">return_lock</a> (<a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a> *lock)</td></tr>

<tr><td colspan="2"><br><h2>Private Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ACE_Array&lt; <a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#a74a3231c121364f05d973c9b458c6de">Pool</a></td></tr>

<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00489.html#a74a3231c121364f05d973c9b458c6de">Pool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#47c4bce1179dffdeb45715e3ed9c4e2a">pool_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#74b7f8f5628b36fbc7d6d88c975a2187">size_</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00489.html#a9567e048583d1afe4b76866441abf82">iterator_</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to track which lock to give out next.  <a href="#a9567e048583d1afe4b76866441abf82"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds and distributes locks to be used for locking ACE_Data_Blocks. Currently it does not require returning the locks. 
<p>
<dl compact><dt><b>Note:</b></dt><dd>: The lock returned is not guaranteed to be unique.<p>
: This class is NOT thread safe. </dd></dl>

<p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="a97d0a2897ff7f4e0792a473a3d92c34"></a><!-- doxytag: member="DataBlockLockPool::DataBlockLock" ref="a97d0a2897ff7f4e0792a473a3d92c34" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef ACE_Lock_Adapter&lt;ACE_Thread_Mutex&gt; <a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLockPool::DataBlockLock</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a74a3231c121364f05d973c9b458c6de"></a><!-- doxytag: member="DataBlockLockPool::Pool" ref="a74a3231c121364f05d973c9b458c6de" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef ACE_Array&lt;<a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a>&gt; <a class="el" href="a00489.html#a74a3231c121364f05d973c9b458c6de">DataBlockLockPool::Pool</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="5c4afc8dbba41bbead139333457d8218"></a><!-- doxytag: member="DataBlockLockPool::DataBlockLockPool" ref="5c4afc8dbba41bbead139333457d8218" args="(size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">DataBlockLockPool::DataBlockLockPool           </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="14da0344b027610edb44b19ee829dbe0"></a><!-- doxytag: member="DataBlockLockPool::~DataBlockLockPool" ref="14da0344b027610edb44b19ee829dbe0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">DataBlockLockPool::~DataBlockLockPool           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="f6f5adecf9b485e314d845a478fa8fff"></a><!-- doxytag: member="DataBlockLockPool::get_lock" ref="f6f5adecf9b485e314d845a478fa8fff" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLockPool::DataBlockLock</a> * DataBlockLockPool::get_lock           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b786bfa9a88607b8ba7833335e9b056c"></a><!-- doxytag: member="DataBlockLockPool::return_lock" ref="b786bfa9a88607b8ba7833335e9b056c" args="(DataBlockLock *lock)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DataBlockLockPool::return_lock           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00489.html#a97d0a2897ff7f4e0792a473a3d92c34">DataBlockLock</a> *&nbsp;</td>
          <td class="paramname"> <em>lock</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="a9567e048583d1afe4b76866441abf82"></a><!-- doxytag: member="DataBlockLockPool::iterator_" ref="a9567e048583d1afe4b76866441abf82" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="a00489.html#a9567e048583d1afe4b76866441abf82">DataBlockLockPool::iterator_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Used to track which lock to give out next. 
<p>

</div>
</div><p>
<a class="anchor" name="47c4bce1179dffdeb45715e3ed9c4e2a"></a><!-- doxytag: member="DataBlockLockPool::pool_" ref="47c4bce1179dffdeb45715e3ed9c4e2a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00489.html#a74a3231c121364f05d973c9b458c6de">Pool</a> <a class="el" href="a00489.html#47c4bce1179dffdeb45715e3ed9c4e2a">DataBlockLockPool::pool_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="74b7f8f5628b36fbc7d6d88c975a2187"></a><!-- doxytag: member="DataBlockLockPool::size_" ref="74b7f8f5628b36fbc7d6d88c975a2187" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="a00489.html#74b7f8f5628b36fbc7d6d88c975a2187">DataBlockLockPool::size_</a><code> [private]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="a00802.html">DataBlockLockPool.h</a><li><a class="el" href="a00801.html">DataBlockLockPool.cpp</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Nov 7 09:37:22 2008 for OpenDDS by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>

⌨️ 快捷键说明

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