SpinLock.TryEnter Método

Definição

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

Sobrecargas

Name Description
TryEnter(Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

TryEnter(Int32, Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

TryEnter(TimeSpan, Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

TryEnter(Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

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

Verdade se o cadeado for adquirido; caso contrário, falso. lockTaken deve ser inicializado como false antes de chamar este método.

Exceções

O lockTaken argumento deve ser inicializado como falso antes de chamar o TryEnter.

O rastreio da propriedade da thread está ativado, e a thread atual já adquiriu este bloqueio.

Observações

Ao contrário de , o TryEnter não bloqueia a Enterespera que a fechadura esteja disponível. Se o bloqueio não estiver disponível quando o TryEnter for chamado, ele retornará imediatamente sem qualquer rotação adicional.

Ver também

Aplica-se a

TryEnter(Int32, Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

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

O número de milissegundos para esperar, ou Infinite (-1) para esperar indefinidamente.

lockTaken
Boolean

Verdade se o cadeado for adquirido; caso contrário, falso. lockTaken deve ser inicializado como false antes de chamar este método.

Exceções

millisecondsTimeout é um número negativo diferente de -1, o que representa um tempo limite infinito.

O lockTaken argumento deve ser inicializado como falso antes de chamar o TryEnter.

O rastreio da propriedade da thread está ativado, e a thread atual já adquiriu este bloqueio.

Observações

Ao contrário do , o TryEnter não bloqueia a Enterespera indefinida que a fechadura esteja disponível. Vai bloquear até que o cadeado esteja disponível ou até millisecondsTimeout expirar.

Ver também

Aplica-se a

TryEnter(TimeSpan, Boolean)

Tentativas de adquirir o bloqueio de forma fiável, de modo que mesmo que ocorra uma exceção dentro da chamada do método, lockTaken possam ser examinadas de forma fiável para determinar se o bloqueio foi adquirido.

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

A TimeSpan que representa o número de milissegundos para esperar, ou a TimeSpan que representa -1 milissegundos para esperar indefinidamente.

lockTaken
Boolean

Verdade se o cadeado for adquirido; caso contrário, falso. lockTaken deve ser inicializado como false antes de chamar este método.

Exceções

timeout é um número negativo diferente de -1 milissegundos, que representa um tempo de espera infinito -ou-- é maior que Int32.MaxValue milissegundos.

O lockTaken argumento deve ser inicializado como falso antes de chamar o TryEnter.

O rastreio da propriedade da thread está ativado, e a thread atual já adquiriu este bloqueio.

Observações

Ao contrário do , o TryEnter não bloqueia a Enterespera indefinida que a fechadura esteja disponível. Vai bloquear até que o cadeado esteja disponível ou até timeout expirar.

Ver também

Aplica-se a