SpinLock.TryEnter Método

Definición

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

Sobrecargas

Nombre Description
TryEnter(Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

TryEnter(Int32, Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

TryEnter(TimeSpan, Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

TryEnter(Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

public:
 void TryEnter(bool % lockTaken);
public void TryEnter(ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)

Parámetros

lockTaken
Boolean

True si se adquiere el bloqueo; de lo contrario, false. lockTaken debe inicializarse en false antes de llamar a este método.

Excepciones

El lockTaken argumento debe inicializarse en false antes de llamar a TryEnter.

El seguimiento de la propiedad del subproceso está habilitado y el subproceso actual ya ha adquirido este bloqueo.

Comentarios

A diferencia Enterde , TryEnter no bloqueará la espera de que el bloqueo esté disponible. Si el bloqueo no está disponible cuando se llama a TryEnter, se devolverá inmediatamente sin girar más.

Consulte también

Se aplica a

TryEnter(Int32, Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

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)

Parámetros

millisecondsTimeout
Int32

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

lockTaken
Boolean

True si se adquiere el bloqueo; de lo contrario, false. lockTaken debe inicializarse en false antes de llamar a este método.

Excepciones

millisecondsTimeout es un número negativo distinto de -1, que representa un tiempo de espera infinito.

El lockTaken argumento debe inicializarse en false antes de llamar a TryEnter.

El seguimiento de la propiedad del subproceso está habilitado y el subproceso actual ya ha adquirido este bloqueo.

Comentarios

A diferencia Enterde , TryEnter no bloqueará indefinidamente la espera de que el bloqueo esté disponible. Se bloqueará hasta que el bloqueo esté disponible o hasta que millisecondsTimeout haya expirado.

Consulte también

Se aplica a

TryEnter(TimeSpan, Boolean)

Intenta adquirir el bloqueo de forma confiable, de modo que incluso si se produce una excepción dentro de la llamada al método, lockTaken se puede examinar de forma confiable para determinar si se adquirió el bloqueo.

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)

Parámetros

timeout
TimeSpan

TimeSpan que representa el número de milisegundos que se van a esperar, o que TimeSpan representa -1 milisegundos que se van a esperar indefinidamente.

lockTaken
Boolean

True si se adquiere el bloqueo; de lo contrario, false. lockTaken debe inicializarse en false antes de llamar a este método.

Excepciones

timeout es un número negativo distinto de -1 milisegundos, que representa un tiempo de espera infinito (o bien) es mayor que los milisegundos Int32.MaxValue .

El lockTaken argumento debe inicializarse en false antes de llamar a TryEnter.

El seguimiento de la propiedad del subproceso está habilitado y el subproceso actual ya ha adquirido este bloqueo.

Comentarios

A diferencia Enterde , TryEnter no bloqueará indefinidamente la espera de que el bloqueo esté disponible. Se bloqueará hasta que el bloqueo esté disponible o hasta que timeout haya expirado.

Consulte también

Se aplica a