Partager via


ILock.LockInterruptibly Méthode

Définition

Acquiert le verrou, sauf si le thread actuel est interrompu par thread#interruption.

[Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler:Java.Util.Concurrent.Locks.ILockInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void LockInterruptibly ();
[<Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler:Java.Util.Concurrent.Locks.ILockInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member LockInterruptibly : unit -> unit
Attributs

Exceptions

si le thread actuel est interrompu lors de l’acquisition du verrou (et que l’interruption de l’acquisition de verrou est prise en charge)

Remarques

Acquiert le verrou, sauf si le thread actuel est interrompu par thread#interruption.

Acquiert le verrou s’il est disponible et retourne immédiatement.

Si le verrou n’est pas disponible, le thread actuel devient désactivé à des fins de planification de threads et se trouve dormant jusqu’à ce que l’une des deux choses se produisent :

<ul><li>Le verrou est acquis par le thread actuel ; ou <li>Un autre thread thread#interruption interrompt le thread actuel et l’interruption de l’acquisition de verrou est prise en charge. </ul>

Si le thread actuel : <ul><li>a son état interrompu défini sur l’entrée de cette méthode ; ou <li>is Thread#interruption lors de l’acquisition du verrou, et l’interruption de l’acquisition de verrou est prise en charge, </ul> est InterruptedException levée et l’état interrompu du thread actuel est effacé.

<b>Considérations relatives< à l’implémentation/b>

La possibilité d’interrompre une acquisition de verrous dans certaines implémentations peut ne pas être possible, et si possible peut être une opération coûteuse. Le programmeur doit savoir que c’est peut-être le cas. Une implémentation doit documenter quand c’est le cas.

Une implémentation peut favoriser la réponse à une interruption par rapport au retour normal de la méthode.

Une Lock implémentation peut être en mesure de détecter une utilisation erronée du verrou, telle qu’un appel qui provoquerait un blocage et peut lever une exception (non cochée) dans de telles circonstances. Les circonstances et le type d’exception doivent être documentés par cette Lock implémentation.

Documentation Java pour java.util.concurrent.locks.Lock.lockInterruptibly().

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à