ReaderWriterLockSlim.TryEnterReadLock Método

Definición

Intenta entrar en el bloqueo en modo de lectura, con un tiempo de espera opcional.

Sobrecargas

Nombre Description
TryEnterReadLock(Int32)

Intenta entrar en el bloqueo en modo de lectura, con un tiempo de espera de entero opcional.

TryEnterReadLock(TimeSpan)

Intenta entrar en el bloqueo en modo de lectura, con un tiempo de espera opcional.

TryEnterReadLock(Int32)

Intenta entrar en el bloqueo en modo de lectura, con un tiempo de espera de entero opcional.

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

Parámetros

millisecondsTimeout
Int32

Número de milisegundos que se van a esperar o -1 (Infinite) para esperar indefinidamente.

Devoluciones

true si el subproceso de llamada entró en modo de lectura; de lo contrario, false.

Excepciones

La RecursionPolicy propiedad es NoRecursion y el subproceso actual ya ha entrado en el bloqueo.

O bien

El número de recursividad superaría la capacidad del contador. El límite es tan grande que las aplicaciones nunca deben encontrarse con él.

El valor de millisecondsTimeout es negativo, pero no es igual a Infinite (-1), que es el único valor negativo permitido.

El ReaderWriterLockSlim objeto se ha eliminado.

Comentarios

Si millisecondsTimeout es 0 (cero), este método comprueba el estado de bloqueo y devuelve false inmediatamente si el estado deseado no está disponible.

Varios subprocesos pueden entrar en modo de lectura al mismo tiempo.

Si uno o varios subprocesos están esperando entrar en modo de escritura, un subproceso que llama al TryEnterReadLock método bloquea hasta que esos subprocesos hayan agotado el tiempo de espera o hayan entrado en modo de escritura y, a continuación, salgan de él, o hasta que expire el intervalo de tiempo de espera del subproceso que realiza la llamada.

Note

Si un bloqueo permite la recursividad, un subproceso que ha entrado en el bloqueo en modo de lectura puede entrar en modo de lectura recursivamente, incluso si otros subprocesos están esperando entrar en modo de escritura.

Un subproceso puede estar en modo actualizable mientras que otros subprocesos están en modo de lectura. Si hay subprocesos adicionales a la espera de entrar en modo actualizable y no hay ningún subproceso esperando entrar en modo de escritura, los subprocesos que llaman al TryEnterReadLock método entran en modo de lectura inmediatamente y no se bloquean.

Se aplica a

TryEnterReadLock(TimeSpan)

Intenta entrar en el bloqueo en modo de lectura, con un tiempo de espera opcional.

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

Parámetros

timeout
TimeSpan

Intervalo que se va a esperar o -1 milisegundos para esperar indefinidamente.

Devoluciones

true si el subproceso de llamada entró en modo de lectura; de lo contrario, false.

Excepciones

La RecursionPolicy propiedad es NoRecursion y el subproceso actual ya ha entrado en el bloqueo.

O bien

El número de recursividad superaría la capacidad del contador. El límite es tan grande que las aplicaciones nunca deben encontrarse con él.

El valor de timeout es negativo, pero no es igual a -1 milisegundos, que es el único valor negativo permitido.

O bien

El valor de timeout es mayor que Int32.MaxValue milisegundos.

El ReaderWriterLockSlim objeto se ha eliminado.

Comentarios

Si timeout es 0 (cero), este método comprueba el estado de bloqueo y devuelve false inmediatamente si el estado deseado no está disponible.

Varios subprocesos pueden entrar en el bloqueo en modo de lectura al mismo tiempo.

Si uno o varios subprocesos se ponen en cola para entrar en modo de escritura, un subproceso que llama al TryEnterReadLock método bloquea hasta que esos subprocesos hayan agotado el tiempo de espera o haya entrado en el modo de escritura y, a continuación, salga de él o hasta que expire el propio intervalo de tiempo de espera del subproceso que realiza la llamada.

Note

Si un bloqueo permite la recursividad, un subproceso que ha entrado en el bloqueo en modo de lectura puede entrar en modo de lectura recursivamente, incluso si otros subprocesos están esperando entrar en modo de escritura.

Un subproceso puede estar en modo actualizable mientras que otros subprocesos están en modo de lectura. Si hay subprocesos adicionales a la espera de entrar en modo actualizable y no hay ningún subproceso esperando entrar en modo de escritura, los subprocesos que llaman al TryEnterReadLock método entran en modo de lectura inmediatamente y no se bloquean.

Se aplica a