reentrantreadwritelock.html
来自「j2se5-api-zh,java文档的中文版本」· HTML 代码 · 共 839 行 · 第 1/3 页
HTML
839 行
<PRE>public boolean <B>isWriteLockedByCurrentThread</B>()</PRE><DL><DD>查询当前线程是否保持了写入锁定。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>如果当前线程保持写入锁定,则返回 <tt>true</tt>;否则返回 <tt>false</tt>。</DL></DD></DL><HR><A NAME="getWriteHoldCount()"><!-- --></A><H3>getWriteHoldCount</H3><PRE>public int <B>getWriteHoldCount</B>()</PRE><DL><DD>查询当前线程在此锁定上保持的重入写入锁定数量。对于与解除锁定操作不匹配的每个锁定操作,writer 线程都会为其保持一个锁定。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>当前线程保持的写入锁定数量,如果当前线程从未保持过写入锁定,则返回 0。</DL></DD></DL><HR><A NAME="getQueuedWriterThreads()"><!-- --></A><H3>getQueuedWriterThreads</H3><PRE>protected <A HREF="../../Collection.html" title="java.util 中的接口">Collection</A><<A HREF="../../../lang/Thread.html" title="java.lang 中的类">Thread</A>> <B>getQueuedWriterThreads</B>()</PRE><DL><DD>返回一个 collection,它包含可能正在等待获取写入锁定的线程。因为在构成此结果的同时,实际的线程 set 可能不断发生变化,所以返回的 collection 仅是尽力而为获得的估计值。所返回 collection 的元素没有特定的顺序。设计此方法是为了便于构造提供更多扩展的锁定监视器设施的子类。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>线程的 collection</DL></DD></DL><HR><A NAME="getQueuedReaderThreads()"><!-- --></A><H3>getQueuedReaderThreads</H3><PRE>protected <A HREF="../../Collection.html" title="java.util 中的接口">Collection</A><<A HREF="../../../lang/Thread.html" title="java.lang 中的类">Thread</A>> <B>getQueuedReaderThreads</B>()</PRE><DL><DD>返回一个 collection,它包含可能正在等待获取读取锁定的线程。因为在构成此结果的同时,实际的线程 set 可能不断发生变化,所以返回的 collection 仅是尽力而为获得的估计值。所返回 collection 的元素没有特定的顺序。设计此方法是为了便于构造提供更多扩展的锁定监视器设施的子类。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>线程的 collection</DL></DD></DL><HR><A NAME="hasQueuedThreads()"><!-- --></A><H3>hasQueuedThreads</H3><PRE>public final boolean <B>hasQueuedThreads</B>()</PRE><DL><DD>查询是否所有的线程正在等待获取读取或写入锁定。注意,因为随时可能发生取消操作,所以返回 <tt>true</tt> 并不保证任何其他线程将获取锁定。此方法主要用于监视系统状态。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>如果有其他线程正等待获取锁定,则返回 true。</DL></DD></DL><HR><A NAME="hasQueuedThread(java.lang.Thread)"><!-- --></A><H3>hasQueuedThread</H3><PRE>public final boolean <B>hasQueuedThread</B>(<A HREF="../../../lang/Thread.html" title="java.lang 中的类">Thread</A> thread)</PRE><DL><DD>查询是否给定线程正在等待获取读取或写入锁定。注意,因为随时可能发生取消操作,所以返回 <tt>true</tt> 并不保证此线程将获取锁定。此方法主要用于监视系统状态。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>thread</CODE> - 线程<DT><B>返回:</B><DD>如果将给定的线程加入等待此锁定的队列,则返回 true。<DT><B>抛出:</B><DD><CODE><A HREF="../../../lang/NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果 thread 为 null</DL></DD></DL><HR><A NAME="getQueueLength()"><!-- --></A><H3>getQueueLength</H3><PRE>public final int <B>getQueueLength</B>()</PRE><DL><DD>返回等待获取读取或写入锁定的线程估计数目。因为在此方法遍历内部数据结构时,可以动态地更改线程数,所以该值只能是一个估计值。此方法设计用于监视系统状态,而不是同步控制。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>正在等待此锁定的线程估计数目。</DL></DD></DL><HR><A NAME="getQueuedThreads()"><!-- --></A><H3>getQueuedThreads</H3><PRE>protected <A HREF="../../Collection.html" title="java.util 中的接口">Collection</A><<A HREF="../../../lang/Thread.html" title="java.lang 中的类">Thread</A>> <B>getQueuedThreads</B>()</PRE><DL><DD>返回一个 collection,它包含可能正在等待获取读取或写入锁定的线程。因为在构造此结果的同时,实际的线程 set 可能不断发生变化,所以返回的 collection 仅是尽力而为获得的估计值。所返回 collection 中的元素没有特定的顺序。此方法用于加快子类的构造速度,提供更多的监视设施。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>线程的 collection</DL></DD></DL><HR><A NAME="hasWaiters(java.util.concurrent.locks.Condition)"><!-- --></A><H3>hasWaiters</H3><PRE>public boolean <B>hasWaiters</B>(<A HREF="Condition.html" title="java.util.concurrent.locks 中的接口">Condition</A> condition)</PRE><DL><DD>查询是否有些线程正在等待与写入锁定有关的给定条件。注意,因为随时可能发生超时和中断,所以返回 <tt>true</tt> 并不保证将来某个 <tt>signal</tt> 将唤醒任何线程。此方法主要用于监视系统状态。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>condition</CODE> - 条件<DT><B>返回:</B><DD>如果有等待的线程,则返回 <tt>true</tt>。<DT><B>抛出:</B><DD><CODE><A HREF="../../../lang/IllegalMonitorStateException.html" title="java.lang 中的类">IllegalMonitorStateException</A></CODE> - 如果没有保持此锁定<DD><CODE><A HREF="../../../lang/IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果给定 condition 与此锁定无关<DD><CODE><A HREF="../../../lang/NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果 condition 为 null</DL></DD></DL><HR><A NAME="getWaitQueueLength(java.util.concurrent.locks.Condition)"><!-- --></A><H3>getWaitQueueLength</H3><PRE>public int <B>getWaitQueueLength</B>(<A HREF="Condition.html" title="java.util.concurrent.locks 中的接口">Condition</A> condition)</PRE><DL><DD>返回正等待与写入锁定相关的给定条件的线程估计数目。注意,因为随时可能发生超时和中断,所以只能将估计值作为实际等待线程数的上限。此方法设计用于监视系统状态,而不是同步控制。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>condition</CODE> - 条件<DT><B>返回:</B><DD>等待线程的估计数。<DT><B>抛出:</B><DD><CODE><A HREF="../../../lang/IllegalMonitorStateException.html" title="java.lang 中的类">IllegalMonitorStateException</A></CODE> - 如果没有保持此锁定<DD><CODE><A HREF="../../../lang/IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果给定 condition 与此锁定无关<DD><CODE><A HREF="../../../lang/NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果 condition 为 null</DL></DD></DL><HR><A NAME="getWaitingThreads(java.util.concurrent.locks.Condition)"><!-- --></A><H3>getWaitingThreads</H3><PRE>protected <A HREF="../../Collection.html" title="java.util 中的接口">Collection</A><<A HREF="../../../lang/Thread.html" title="java.lang 中的类">Thread</A>> <B>getWaitingThreads</B>(<A HREF="Condition.html" title="java.util.concurrent.locks 中的接口">Condition</A> condition)</PRE><DL><DD>返回一个 collection,它包含可能正在等待与写入锁定相关的给定条件的那些线程。因为在构造此结果的同时,实际的线程 set 可能不断发生变化,所以返回的 collection 仅是尽力而为获得的估计值。所返回 collection 中的元素没有特定的顺序。此方法用于加快子类的构造速度,提供更多的条件监视设施。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>condition</CODE> - 条件<DT><B>返回:</B><DD>线程的 collection<DT><B>抛出:</B><DD><CODE><A HREF="../../../lang/IllegalMonitorStateException.html" title="java.lang 中的类">IllegalMonitorStateException</A></CODE> - 如果没有保持此锁定<DD><CODE><A HREF="../../../lang/IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果给定 condition 与此锁定无关<DD><CODE><A HREF="../../../lang/NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果 condition 为 null</DL></DD></DL><HR><A NAME="toString()"><!-- --></A><H3>toString</H3><PRE>public <A HREF="../../../lang/String.html" title="java.lang 中的类">String</A> <B>toString</B>()</PRE><DL><DD>返回标识此锁定及其锁定状态的字符串。该状态括在括号中,它包括字符串 "Write locks =",后跟重入保持写入锁定的数目,然后是字符串 "Read locks =",后跟所保持读取锁定的数目。<P><DD><DL><DT><B>覆盖:</B><DD>类 <CODE><A HREF="../../../lang/Object.html" title="java.lang 中的类">Object</A></CODE> 中的 <CODE><A HREF="../../../lang/Object.html#toString()">toString</A></CODE></DL></DD><DD><DL><DT><B>返回:</B><DD>标识此锁定及其锁定状态的字符串。</DL></DD></DL><!-- ========= END OF CLASS DATA ========= --><HR><!-- ======= START OF BOTTOM NAVBAR ====== --><A NAME="navbar_bottom"><!-- --></A><A HREF="#skip-navbar_bottom" title="跳过导航链接"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_bottom_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>概述</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>软件包</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>类</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ReentrantReadWriteLock.html"><FONT CLASS="NavBarFont1"><B>使用</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>树</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>已过时</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>索引</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>帮助</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM><b>Java<sup><font size=-2>TM</font></sup> 2 Platform<br>Standard Ed. 5.0</b></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="ReentrantLock.html" title="java.util.concurrent.locks 中的类"><B>上一个类</B></A> <A HREF="ReentrantReadWriteLock.ReadLock.html" title="java.util.concurrent.locks 中的类"><B>下一个类</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html@java_2Futil_2Fconcurrent_2Flocks_2FReentrantReadWriteLock.html" target="_top"><B>框架</B></A> <A HREF="ReentrantReadWriteLock.html" target="_top"><B>无框架</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>所有类</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../../../../allclasses-noframe.html"><B>所有类</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 摘要: <A HREF="#nested_class_summary">嵌套</A> | 字段 | <A HREF="#constructor_summary">构造方法</A> | <A HREF="#method_summary">方法</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">详细信息: 字段 | <A HREF="#constructor_detail">构造方法</A> | <A HREF="#method_detail">方法</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_bottom"></A><!-- ======== END OF BOTTOM NAVBAR ======= --><HR><font size="-1"><a href="../../../../../../../../../../java.sun.com/cgi-bin/bugreport.cgi">提交错误或意见</a><br>有关更多的 API 参考资料和开发人员文档,请参阅 <a href="../../../../../../../../../../java.sun.com/j2se/1.5.0/docs/relnotes/devdocs-vs-specs.html">Java 2 SDK SE 开发人员文档</a>。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。 <p>版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守<a href="../../../../../../../../../../java.sun.com/j2se/1.5.0/docs/relnotes/license.html">许可证条款</a>。另请参阅<a href="../../../../../../../../../../java.sun.com/docs/redist.html">文档重新分发政策</a>。</font></BODY></HTML>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?