ICondition.AwaitUninterruptibly Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bewirkt, dass der aktuelle Thread wartet, bis er signalisiert wird.
[Android.Runtime.Register("awaitUninterruptibly", "()V", "GetAwaitUninterruptiblyHandler:Java.Util.Concurrent.Locks.IConditionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void AwaitUninterruptibly();
[<Android.Runtime.Register("awaitUninterruptibly", "()V", "GetAwaitUninterruptiblyHandler:Java.Util.Concurrent.Locks.IConditionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member AwaitUninterruptibly : unit -> unit
- Attribute
Hinweise
Bewirkt, dass der aktuelle Thread wartet, bis er signalisiert wird.
Die dieser Bedingung zugeordnete Sperre wird atomisch freigegeben, und der aktuelle Thread wird für Threadplanungszwecke deaktiviert und liegt ruhend, bis em one/em> von drei Dingen passiert: <ul<>li>Ein anderer Thread ruft die #signal Methode dafür Condition auf, und der aktuelle Thread wird als thread ausgewählt, der wach werden soll; oder <li>Einige andere Thread ruft die #signalAll Methode für dieses Condition; oder <li>A "<<><em>spurious wakeup</em>" tritt auf.
</ul>
In allen Fällen muss, bevor diese Methode den aktuellen Thread zurückgeben kann, die mit dieser Bedingung verknüpfte Sperre erneut abrufen. Wenn der Thread zurückgibt, ist <>es garantiert</em>, diese Sperre zu halten.
Wenn der unterbrochene Status des aktuellen Threads festgelegt wird, wenn er diese Methode eingibt, oder thread#interrupt unterbrochen wird, während der Wartezeit gewartet wird, wartet er weiterhin, bis es signalisiert wurde. Wenn sie schließlich von dieser Methode zurückgegeben wird, wird der unterbrochene Status noch festgelegt.
<b>Überlegungen zur Implementierung</b>
Der aktuelle Thread wird davon ausgegangen, dass die dieser Condition Sperre zugeordnet ist, wenn diese Methode aufgerufen wird. Es liegt an der Implementierung, festzustellen, ob dies der Fall ist und wenn nicht, wie man reagiert. In der Regel wird eine Ausnahme ausgelöst (z IllegalMonitorStateException. B. ) und die Implementierung muss diese Tatsache dokumentieren.
Java Dokumentation für java.util.concurrent.locks.Condition.awaitUninterruptibly().
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.