ReceiveContext.Abandon Método

Definição

Faz com que a máquina de estados transite para o estado abandonado.

Sobrecargas

Name Description
Abandon(TimeSpan)

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

Abandon(Exception, TimeSpan)

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

Observações

Abandon pode deixar de responder quando há uma transação ambiente e Complete é chamada e, posteriormente, a transação é revertida. Se Abandon for chamada antes da conclusão do rollback da transação, existirá uma condição de corrida, fazendo com que a chamada Abandon deixe de responder. Isto pode ser ilustrado pelo seguinte exemplo de pseudocódigo

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

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

Abandon(TimeSpan)

Faz com que a máquina de estados faça a transição para o estado abandonado com o valor de timeout 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 para a operação de abandono terminar.

Aplica-se a

Abandon(Exception, TimeSpan)

Faz com que a máquina de estados faça a transição para o estado abandonado com a exceção e o valor de timeout 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 para a operação de abandono terminar.

Aplica-se a