Sdílet prostřednictvím


ReceiveContext.Abandon Metoda

Definice

Způsobí, že stavový počítač přejde do opuštěného stavu.

Přetížení

Abandon(TimeSpan)

Způsobí, že stavový počítač přejde do opuštěného stavu se zadanou hodnotou časového limitu.

Abandon(Exception, TimeSpan)

Způsobí, že stavový počítač přejde do opuštěného stavu se zadanou hodnotou výjimky a časového limitu.

Poznámky

Abandon může přestat reagovat, pokud je okolí transakce a Complete je volána a poté transakce je vrácena zpět. Pokud Abandon je volána před dokončením vrácení transakce zpět, bude existovat konflikt časování, což způsobí, že volání Abandon přestane reagovat. To lze ilustrovat na následujícím příkladu pseudokódu.

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

Toto není doporučený vzor pro práci s ReceiveContextnástrojem . Místo toho by blok try/catch měl být umístěn mimo obor transakce.

Abandon(TimeSpan)

Způsobí, že stavový počítač přejde do opuštěného stavu se zadanou hodnotou časového limitu.

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)

Parametry

timeout
TimeSpan

Časový limit pro dokončení operace opuštění.

Platí pro

Abandon(Exception, TimeSpan)

Způsobí, že stavový počítač přejde do opuštěného stavu se zadanou hodnotou výjimky a časového limitu.

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)

Parametry

exception
Exception

Výjimka, která způsobí operaci opuštění.

timeout
TimeSpan

Časový limit pro dokončení operace opuštění.

Platí pro