ReaderWriterLockSlim.TryEnterReadLock Méthode

Définition

Tente d’entrer le verrou en mode lecture, avec un délai d’attente facultatif.

Surcharges

Nom Description
TryEnterReadLock(Int32)

Tente d’entrer le verrou en mode lecture, avec un délai d’attente entier facultatif.

TryEnterReadLock(TimeSpan)

Tente d’entrer le verrou en mode lecture, avec un délai d’attente facultatif.

TryEnterReadLock(Int32)

Tente d’entrer le verrou en mode lecture, avec un délai d’attente entier facultatif.

public:
 bool TryEnterReadLock(int millisecondsTimeout);
public bool TryEnterReadLock(int millisecondsTimeout);
member this.TryEnterReadLock : int -> bool
Public Function TryEnterReadLock (millisecondsTimeout As Integer) As Boolean

Paramètres

millisecondsTimeout
Int32

Nombre de millisecondes à attendre, ou -1 (Infinite) d’attendre indéfiniment.

Retours

true si le thread appelant est entré en mode lecture, sinon false.

Exceptions

La RecursionPolicy propriété est NoRecursion et le thread actuel a déjà entré le verrou.

-ou-

Le nombre de récursivité dépasse la capacité du compteur. La limite est si grande que les applications ne doivent jamais les rencontrer.

La valeur est millisecondsTimeout négative, mais elle n’est pas égale à Infinite (-1), qui est la seule valeur négative autorisée.

L’objet ReaderWriterLockSlim a été supprimé.

Remarques

Si millisecondsTimeout la valeur est 0 (zéro), cette méthode vérifie l’état de verrouillage et retourne false immédiatement si l’état souhaité n’est pas disponible.

Plusieurs threads peuvent entrer en mode lecture en même temps.

Si un ou plusieurs threads attendent d’entrer en mode d’écriture, un thread qui appelle les TryEnterReadLock blocs de méthode jusqu’à ce que ces threads aient expiré ou entré le mode d’écriture, puis quitté, ou jusqu’à ce que l’intervalle de délai d’expiration du thread appelant expire.

Note

Si un verrou autorise la récursivité, un thread qui a entré le verrou en mode lecture peut entrer en mode lecture récursivement, même si d’autres threads attendent d’entrer en mode écriture.

Un thread peut être en mode mise à niveau alors que d’autres threads sont en mode lecture. Si d’autres threads attendent d’entrer en mode mise à niveau et qu’il n’y a pas de threads en attente d’entrée en mode d’écriture, les threads qui appellent la TryEnterReadLock méthode entrent immédiatement en mode lecture et ne bloquent pas.

S’applique à

TryEnterReadLock(TimeSpan)

Tente d’entrer le verrou en mode lecture, avec un délai d’attente facultatif.

public:
 bool TryEnterReadLock(TimeSpan timeout);
public bool TryEnterReadLock(TimeSpan timeout);
member this.TryEnterReadLock : TimeSpan -> bool
Public Function TryEnterReadLock (timeout As TimeSpan) As Boolean

Paramètres

timeout
TimeSpan

Intervalle à attendre, ou -1 millisecondes pour attendre indéfiniment.

Retours

true si le thread appelant est entré en mode lecture, sinon false.

Exceptions

La RecursionPolicy propriété est NoRecursion et le thread actuel a déjà entré le verrou.

-ou-

Le nombre de récursivité dépasse la capacité du compteur. La limite est si grande que les applications ne doivent jamais les rencontrer.

La valeur est timeout négative, mais elle n’est pas égale à -1 millisecondes, qui est la seule valeur négative autorisée.

-ou-

La valeur est timeout supérieure à Int32.MaxValue millisecondes.

L’objet ReaderWriterLockSlim a été supprimé.

Remarques

Si timeout la valeur est 0 (zéro), cette méthode vérifie l’état de verrouillage et retourne false immédiatement si l’état souhaité n’est pas disponible.

Plusieurs threads peuvent entrer le verrou en mode lecture en même temps.

Si un ou plusieurs threads sont mis en file d’attente pour entrer en mode d’écriture, un thread qui appelle la TryEnterReadLock méthode bloque jusqu’à ce que ces threads aient expiré ou entré en mode d’écriture, puis quittent celui-ci, ou jusqu’à ce que l’intervalle de délai d’expiration du thread appelant expire.

Note

Si un verrou autorise la récursivité, un thread qui a entré le verrou en mode lecture peut entrer en mode lecture récursivement, même si d’autres threads attendent d’entrer en mode écriture.

Un thread peut être en mode mise à niveau alors que d’autres threads sont en mode lecture. Si d’autres threads attendent d’entrer en mode mise à niveau et qu’il n’y a pas de threads en attente d’entrée en mode d’écriture, les threads qui appellent la TryEnterReadLock méthode entrent immédiatement en mode lecture et ne bloquent pas.

S’applique à