SpinLock.TryEnter Método

Definição

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

Sobrecargas

Nome Description
TryEnter(Boolean)

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

TryEnter(Int32, Boolean)

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

TryEnter(TimeSpan, Boolean)

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

TryEnter(Boolean)

As tentativas de adquirir o bloqueio de maneira confiável, de modo que, mesmo que ocorra uma exceção dentro da chamada de método, lockTaken possam ser examinadas de forma confiá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

True se o bloqueio for adquirido; caso contrário, false. lockTaken deve ser inicializado como false antes de chamar esse método.

Exceções

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

O controle de propriedade do thread está habilitado e o thread atual já adquiriu esse bloqueio.

Comentários

Ao contrário Enterde TryEnter, o TryEnter não bloqueará a espera para que o bloqueio esteja disponível. Se o bloqueio não estiver disponível quando TryEnter for chamado, ele retornará imediatamente sem nenhuma rotação adicional.

Confira também

Aplica-se a

TryEnter(Int32, Boolean)

As tentativas de adquirir o bloqueio de maneira confiável, de modo que, mesmo que ocorra uma exceção dentro da chamada de método, lockTaken possam ser examinadas de forma confiá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 a aguardar ou Infinite (-1) aguardar indefinidamente.

lockTaken
Boolean

True se o bloqueio for adquirido; caso contrário, false. lockTaken deve ser inicializado como false antes de chamar esse método.

Exceções

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

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

O controle de propriedade do thread está habilitado e o thread atual já adquiriu esse bloqueio.

Comentários

Ao contrário Enterde TryEnter, o TryEnter não bloqueará indefinidamente aguardando o bloqueio estar disponível. Ele será bloqueado até que o bloqueio esteja disponível ou até que o millisecondsTimeout bloqueio tenha expirado.

Confira também

Aplica-se a

TryEnter(TimeSpan, Boolean)

As tentativas de adquirir o bloqueio de maneira confiável, de modo que, mesmo que ocorra uma exceção dentro da chamada de método, lockTaken possam ser examinadas de forma confiá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

Um TimeSpan que representa o número de milissegundos a aguardar ou um TimeSpan que representa -1 milissegundos para aguardar indefinidamente.

lockTaken
Boolean

True se o bloqueio for adquirido; caso contrário, false. lockTaken deve ser inicializado como false antes de chamar esse método.

Exceções

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

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

O controle de propriedade do thread está habilitado e o thread atual já adquiriu esse bloqueio.

Comentários

Ao contrário Enterde TryEnter, o TryEnter não bloqueará indefinidamente aguardando o bloqueio estar disponível. Ele será bloqueado até que o bloqueio esteja disponível ou até que o timeout bloqueio tenha expirado.

Confira também

Aplica-se a