Share via


ReceiveContext.Abandon Método

Definição

Faz com que a máquina de estado faça a transição para o estado abandonado.

Sobrecargas

Abandon(TimeSpan)

Faz com que a máquina de estado faça a transição para o estado abandonado com o valor de tempo limite especificado.

Abandon(Exception, TimeSpan)

Faz com que a máquina de estado faça a transição para o estado abandonado com o valor de tempo limite e a exceção especificados.

Comentários

Abandon pode parar de responder quando há uma transação de ambiente e Complete é chamada e, posteriormente, a transação é revertida. Se Abandon for chamado antes da conclusão da reversão da transação, uma condição de corrida existirá, fazendo com que a chamada Abandon pare de responder. Isso pode ser ilustrado pelo exemplo de pseudocódigo a seguir

using (TransactionScope ts = new TransactionScope())   
{  
   try  
   {  
       rc.Complete();  
      ...  
   }  
   Catch (Exception)   
   {  
      rc.Abandon()  
   }  
}  

Esse não é o padrão recomendado para trabalhar com ReceiveContext. Em vez disso, o bloco try/catch deve ser colocado fora do escopo da transação.

Abandon(TimeSpan)

Faz com que a máquina de estado faça a transição para o estado abandonado com o valor de tempo limite especificado.

public:
 virtual void Abandon(TimeSpan timeout);
public virtual void Abandon (TimeSpan timeout);
abstract member Abandon : TimeSpan -> unit
override this.Abandon : TimeSpan -> unit
Public Overridable Sub Abandon (timeout As TimeSpan)

Parâmetros

timeout
TimeSpan

O tempo limite para a conclusão da operação de abandono.

Aplica-se a

Abandon(Exception, TimeSpan)

Faz com que a máquina de estado faça a transição para o estado abandonado com o valor de tempo limite e a exceção especificados.

public:
 virtual void Abandon(Exception ^ exception, TimeSpan timeout);
public virtual void Abandon (Exception exception, TimeSpan timeout);
abstract member Abandon : Exception * TimeSpan -> unit
override this.Abandon : Exception * TimeSpan -> unit
Public Overridable Sub Abandon (exception As Exception, timeout As TimeSpan)

Parâmetros

exception
Exception

A exceção que causa a operação de abandono.

timeout
TimeSpan

O tempo limite para a conclusão da operação de abandono.

Aplica-se a