ReentrantLock.LockInterruptibly Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Acquiert le verrou, sauf si le thread actuel est interrompu par thread#interruption.
[Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler")]
public virtual void LockInterruptibly();
[<Android.Runtime.Register("lockInterruptibly", "()V", "GetLockInterruptiblyHandler")>]
abstract member LockInterruptibly : unit -> unit
override this.LockInterruptibly : unit -> unit
Implémente
- Attributs
Exceptions
si le thread actuel est interrompu
Remarques
Acquiert le verrou, sauf si le thread actuel est interrompu par thread#interruption.
Acquiert le verrou s’il n’est pas conservé par un autre thread et retourne immédiatement, en définissant le nombre de blocages de verrou sur un.
Si le thread actuel contient déjà ce verrou, le nombre de conservations est incrémenté par un et la méthode retourne immédiatement.
Si le verrou est conservé par un autre thread, 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.
</ul>
Si le verrou est acquis par le thread actuel, le nombre de blocages de verrou est défini sur un.
Si le thread actuel :
<ul>
<li>a son état interrompu défini lors de l’entrée à cette méthode ; ou
<li>is Thread#interruption lors de l’acquisition du verrou,
</ul>
est ensuite InterruptedException levée et l’état interrompu du thread actuel est effacé.
Dans cette implémentation, étant donné que cette méthode est un point d’interruption explicite, la préférence est donnée pour répondre à l’interruption par rapport à l’acquisition normale ou reentrante du verrou.
Java documentation pour java.util.concurrent.locks.ReentrantLock.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.