SpinLock.TryEnter Método

Definição

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança para determinar se o bloqueio foi adquirido.

Sobrecargas

TryEnter(Boolean)

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança para determinar se o bloqueio foi adquirido.

TryEnter(Int32, Boolean)

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança para determinar se o bloqueio foi adquirido.

TryEnter(TimeSpan, Boolean)

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança para determinar se o bloqueio foi adquirido.

TryEnter(Boolean)

Origem:
SpinLock.cs
Origem:
SpinLock.cs
Origem:
SpinLock.cs

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança 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 tiver sido adquirido; caso contrário, false. lockTaken deve ser inicializado como false antes de chamar esse método.

Exceções

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

O acompanhamento de propriedade de thread está habilitado e o thread atual há adquiriu este bloqueio.

Comentários

Ao contrário Enterde , 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)

Origem:
SpinLock.cs
Origem:
SpinLock.cs
Origem:
SpinLock.cs

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança 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 aguardar ou Infinite (- 1) para aguardar indefinidamente.

lockTaken
Boolean

True se o bloqueio tiver sido 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 argumento lockTaken deve ser inicializado como false antes de chamar TryEnter.

O acompanhamento de propriedade de thread está habilitado e o thread atual há adquiriu este bloqueio.

Comentários

Ao contrário Enterde , 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 tenha expirado.

Confira também

Aplica-se a

TryEnter(TimeSpan, Boolean)

Origem:
SpinLock.cs
Origem:
SpinLock.cs
Origem:
SpinLock.cs

Tenta adquirir o bloqueio de maneira confiável, de forma que mesmo se uma exceção ocorrer dentro da chamada de método, lockTaken poderá ser examinado com confiança 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 para aguardar ou um TimeSpan que representa -1 milissegundos para aguardar indefinidamente.

lockTaken
Boolean

True se o bloqueio tiver sido 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, o que representa um tempo limite infinito -ou- tempo limite é maior que Int32.MaxValue milissegundos.

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

O acompanhamento de propriedade de thread está habilitado e o thread atual há adquiriu este bloqueio.

Comentários

Ao contrário Enterde , 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 tenha expirado.

Confira também

Aplica-se a