Compartir a través de


ReceiveContext.Abandon Método

Definición

Provoca la transición de la máquina de estados a un estado abandonado.

Sobrecargas

Abandon(TimeSpan)

Provoca la transición de la máquina de estados a un estado abandonado con el valor de tiempo de espera especificado.

Abandon(Exception, TimeSpan)

Provoca la transición de la máquina de estados a un estado abandonado con la excepción y el valor de tiempo de espera especificados.

Comentarios

Abandon puede dejar de responder cuando hay una transacción ambiente y Complete se llama a y después se revierte la transacción. Si Abandon se llama a antes de que se complete la reversión de transacciones, existirá una condición de carrera, lo que hará que la llamada Abandon deje de responder. Esto se puede ilustrar mediante el siguiente ejemplo de pseudocódigo

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

Este no es el patrón recomendado para trabajar con ReceiveContext. En su lugar, el bloque try/catch debe colocarse fuera del ámbito de la transacción.

Abandon(TimeSpan)

Provoca la transición de la máquina de estados a un estado abandonado con el valor de tiempo de espera 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

Tiempo de espera para que se complete la operación de abandono.

Se aplica a

Abandon(Exception, TimeSpan)

Provoca la transición de la máquina de estados a un estado abandonado con la excepción y el valor de tiempo de espera 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

La excepción que provoca la operación de abandono.

timeout
TimeSpan

Tiempo de espera para que se complete la operación de abandono.

Se aplica a