Partager via


SpinLock.Enter(Boolean) Méthode

Définition

Acquiert 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 Enter(bool % lockTaken);
public void Enter (ref bool lockTaken);
member this.Enter : bool -> unit
Public Sub Enter (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 ENTRÉE.

Le suivi de la propriété du thread est activé et le thread actuel a déjà acquis ce verrou.

Remarques

SpinLock est un verrou non reentrant, ce qui signifie que si un thread contient le verrou, il n’est pas autorisé à entrer à nouveau le verrou. Si le suivi de propriété du thread est activé (s’il est activé par le biais IsThreadOwnerTrackingEnabledde ), une exception est levée lorsqu’un thread tente de réinscrire un verrou qu’il contient déjà. Toutefois, si le suivi de propriété du thread est désactivé, la tentative d’entrée d’un verrou déjà conservé entraîne un blocage.

Si vous appelez Exit sans avoir d’abord appelé Enter l’état interne du SpinLock peut devenir endommagé.

S’applique à

Voir aussi