SpinLock.TryEnter 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.
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, lockTaken
peut être examiné de façon fiable pour déterminer si le verrou a été acquis.
Surcharges
TryEnter(Boolean) |
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, |
TryEnter(Int32, Boolean) |
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, |
TryEnter(TimeSpan, Boolean) |
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, |
TryEnter(Boolean)
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, lockTaken
peut être examiné de façon fiable pour déterminer si le verrou a été acquis.
public:
void TryEnter(bool % lockTaken);
public void TryEnter (ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)
Paramètres
- lockTaken
- Boolean
True si le verrou est acquis ; sinon, false.
lockTaken
doit être initialisé avec la valeur false avant l'appel à cette méthode.
Exceptions
L'argument lockTaken
doit être initialisé sur false avant d'appeler TryEnter.
Le suivi de la propriété du thread est activé et le thread actuel a déjà acquis ce verrou.
Remarques
Contrairement à Enter, TryEnter ne bloque pas en attendant que le verrou soit disponible. Si le verrou n’est pas disponible lorsque TryEnter est appelé, il retourne immédiatement sans autre rotation.
Voir aussi
- SpinLock
- Comment : utiliser le verrouillage spinlock pour une synchronisation de bas niveau
- Comment : activer le mode de suivi des threads dans le verrouillage Spinlock
S’applique à
TryEnter(Int32, Boolean)
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, lockTaken
peut être examiné de façon fiable pour déterminer si le verrou a été acquis.
public:
void TryEnter(int millisecondsTimeout, bool % lockTaken);
public void TryEnter (int millisecondsTimeout, ref bool lockTaken);
member this.TryEnter : int * bool -> unit
Public Sub TryEnter (millisecondsTimeout As Integer, ByRef lockTaken As Boolean)
Paramètres
- millisecondsTimeout
- Int32
Nombre de millisecondes à attendre, ou Infinite (-1) pour un délai d'attente infini.
- lockTaken
- Boolean
True si le verrou est acquis ; sinon, false.
lockTaken
doit être initialisé avec la valeur false avant l'appel à cette méthode.
Exceptions
millisecondsTimeout
est un nombre négatif différent de -1, qui représente un délai d’attente infini.
L'argument lockTaken
doit être initialisé sur false avant d'appeler TryEnter.
Le suivi de la propriété du thread est activé et le thread actuel a déjà acquis ce verrou.
Remarques
Contrairement à Enter, TryEnter ne bloque pas indéfiniment en attendant que le verrou soit disponible. Il se bloque jusqu’à ce que le verrou soit disponible ou jusqu’à ce que le millisecondsTimeout
ait expiré.
Voir aussi
- SpinLock
- Comment : utiliser le verrouillage spinlock pour une synchronisation de bas niveau
- Comment : activer le mode de suivi des threads dans le verrouillage Spinlock
S’applique à
TryEnter(TimeSpan, Boolean)
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
- Source:
- SpinLock.cs
Tente d'acquérir le verrou de façon fiable, de sorte que même si une exception se produit dans l'appel de méthode, lockTaken
peut être examiné de façon fiable pour déterminer si le verrou a été acquis.
public:
void TryEnter(TimeSpan timeout, bool % lockTaken);
public void TryEnter (TimeSpan timeout, ref bool lockTaken);
member this.TryEnter : TimeSpan * bool -> unit
Public Sub TryEnter (timeout As TimeSpan, ByRef lockTaken As Boolean)
Paramètres
- timeout
- TimeSpan
TimeSpan qui représente le nombre de millièmes de secondes à attendre ou TimeSpan qui représente -1 millième de seconde, pour attendre indéfiniment.
- lockTaken
- Boolean
True si le verrou est acquis ; sinon, false.
lockTaken
doit être initialisé avec la valeur false avant l'appel à cette méthode.
Exceptions
timeout
est un nombre négatif autre que -1 millisecondes, qui représente un délai d’expiration infini ou- le délai d’expiration est supérieur à int32.MaxValue millisecondes.
L'argument lockTaken
doit être initialisé sur false avant d'appeler TryEnter.
Le suivi de la propriété du thread est activé et le thread actuel a déjà acquis ce verrou.
Remarques
Contrairement à Enter, TryEnter ne bloque pas indéfiniment en attendant que le verrou soit disponible. Il se bloque jusqu’à ce que le verrou soit disponible ou jusqu’à ce que le timeout
ait expiré.
Voir aussi
- SpinLock
- Comment : utiliser le verrouillage spinlock pour une synchronisation de bas niveau
- Comment : activer le mode de suivi des threads dans le verrouillage Spinlock