Freigeben über


ReentrantLock.NewCondition Methode

Definition

Gibt eine Condition Instanz für die Verwendung mit dieser Lock Instanz zurück.

[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

Gibt zurück

das Condition-Objekt

Implementiert

Attribute

Hinweise

Gibt eine Condition Instanz für die Verwendung mit dieser Lock Instanz zurück.

Die zurückgegebene Condition Instanz unterstützt dieselben Verwendungen wie die Object Monitormethoden (Object#wait() wait, Object#notify notifyund Object#notifyAll notifyAll) bei Verwendung mit der integrierten Monitorsperre.

<ul>

<li>Wenn diese Sperre nicht gehalten wird, wenn eine der ConditionMethoden "Condition#await()" oder "Condition#signalling" aufgerufen wird, wird ein IllegalMonitorStateException Fehler ausgelöst.

<li>When the condition Condition#await() waiting methods are called the lock is released and, before they return, the lock is reacred and the lock hold count restored to what it was when the method was called.

<li>Wenn ein Thread thread#interrupt während des Wartens unterbrochen ist, wird die Wartezeit beendet, wird eine InterruptedException ausgelöst, und der unterbrochene Status des Threads wird gelöscht.

<li>Wartethreads werden in FIFO-Reihenfolge signalisiert.

<li>Die Reihenfolge der Neuakquisition von Sperren für Threads, die von Wartemethoden zurückgegeben werden, ist identisch mit dem anfänglichen Abrufen der Sperre, die im Standardfall nicht angegeben ist, aber für <em>fair</em> sperren bevorzugt diese Threads, die am längsten warten.

</ul>

Java-Dokumentation für java.util.concurrent.locks.ReentrantLock.newCondition().

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: