ReentrantLock.NewCondition 方法

定义

返回用于 ConditionLock 实例的实例。

[Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")]
public virtual Java.Util.Concurrent.Locks.ICondition? NewCondition();
[<Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")>]
abstract member NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition
override this.NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition

返回

Condition 对象

实现

属性

注解

返回用于 ConditionLock 实例的实例。

返回Condition的实例支持与在内置监视器锁一起使用时监视器方法(Object#wait() waitObject#notify notifyObject#notifyAll notifyAll)相同的用法Object

<ul>

<如果>调用任何 ConditionCondition#await() 等待或 Condition#signal 信号信号方法时,不保留此锁,则会引发一个 IllegalMonitorStateException

<li>当条件条件条件#await() 等待方法被释放时,在返回锁之前,将重新获取锁,并将锁定保留计数还原到调用该方法时的状态。

<li>如果线程在等待时被 Thread#中断中断,则等待将终止,将引发一个 InterruptedException 线程,并且线程的中断状态将被清除。

<li>等待线程按 FIFO 顺序发出信号。

<li>从等待方法返回的线程的锁重新获取顺序与最初获取锁的线程的顺序相同,该锁在默认情况下未指定,但对于 <em>fair</em> 锁,则有利于那些等待时间最长的线程。

</ul>

适用于 . 的 java.util.concurrent.locks.ReentrantLock.newCondition()Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于