Semaphore.AcquireUninterruptibly 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.
Surcharges
| Nom | Description |
|---|---|
| AcquireUninterruptibly() |
Acquiert un permis de ce sémaphore, bloquant jusqu’à ce qu’il soit disponible. |
| AcquireUninterruptibly(Int32) |
Acquiert le nombre donné de permis de ce sémaphore, bloquant jusqu’à ce que tous soient disponibles. |
AcquireUninterruptibly()
Acquiert un permis de ce sémaphore, bloquant jusqu’à ce qu’il soit disponible.
[Android.Runtime.Register("acquireUninterruptibly", "()V", "GetAcquireUninterruptiblyHandler")]
public virtual void AcquireUninterruptibly();
[<Android.Runtime.Register("acquireUninterruptibly", "()V", "GetAcquireUninterruptiblyHandler")>]
abstract member AcquireUninterruptibly : unit -> unit
override this.AcquireUninterruptibly : unit -> unit
- Attributs
Remarques
Acquiert un permis de ce sémaphore, bloquant jusqu’à ce qu’il soit disponible.
Acquiert un permis, si l’un est disponible et retourne immédiatement, réduisant le nombre de permis disponibles par un.
Si aucun permis n’est disponible, le thread actuel devient désactivé à des fins de planification de threads et se trouve dormant jusqu’à ce que certains autres threads appellent la #release méthode pour ce sémaphore et que le thread actuel est à côté d’être affecté à un permis.
Si le thread actuel est l’interruption thread#interruption en attendant un permis, il continuera d’attendre, mais le moment auquel le thread reçoit un permis peut changer par rapport au moment où il aurait reçu l’autorisation sans interruption. Lorsque le thread retourne de cette méthode, son état d’interruption est défini.
Java documentation pour java.util.concurrent.Semaphore.acquireUninterruptibly().
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
S’applique à
AcquireUninterruptibly(Int32)
Acquiert le nombre donné de permis de ce sémaphore, bloquant jusqu’à ce que tous soient disponibles.
[Android.Runtime.Register("acquireUninterruptibly", "(I)V", "GetAcquireUninterruptibly_IHandler")]
public virtual void AcquireUninterruptibly(int permits);
[<Android.Runtime.Register("acquireUninterruptibly", "(I)V", "GetAcquireUninterruptibly_IHandler")>]
abstract member AcquireUninterruptibly : int -> unit
override this.AcquireUninterruptibly : int -> unit
Paramètres
- permits
- Int32
le nombre de permis d’acquérir
- Attributs
Exceptions
s’il permits est négatif
Remarques
Acquiert le nombre donné de permis de ce sémaphore, bloquant jusqu’à ce que tous soient disponibles.
Acquiert le nombre donné de permis, s’ils sont disponibles et retourne immédiatement, réduisant le nombre de permis disponibles par le montant donné. Cette méthode a le même effet que la boucle for (int i = 0; i < permits; ++i) acquireUninterruptibly(); , sauf qu’elle acquiert atomiquement les permis à la fois :
Si des autorisations insuffisantes sont disponibles, le thread actuel devient désactivé à des fins de planification de threads et se trouve dormant jusqu’à ce que d’autres threads appellent l’une des #release() release méthodes pour ce sémaphore et que le thread actuel est en regard d’être affecté des permis et le nombre d’autorisations disponibles satisfait à cette demande.
Si le thread actuel est interrompu par thread#interruption en attendant les autorisations, il continue d’attendre et sa position dans la file d’attente n’est pas affectée. Lorsque le thread retourne de cette méthode, son état d’interruption est défini.
Java documentation pour java.util.concurrent.Semaphore.acquireUninterruptibly(int).
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.