ReceiveContext.Abandon Methode

Definition

Bewirkt, dass der Zustandsautomat in den verlassenen Zustand wechselt.

Überlädt

Name Beschreibung
Abandon(TimeSpan)

Bewirkt, dass der Zustandsautomat mit dem angegebenen Timeoutwert in den verlassenen Zustand wechselt.

Abandon(Exception, TimeSpan)

Bewirkt, dass der Zustandsautomat mit dem angegebenen Ausnahme- und Timeoutwert in den verlassenen Zustand wechselt.

Hinweise

Abandon kann nicht mehr reagieren, wenn eine Ambient-Transaktion vorhanden ist und Complete aufgerufen wird und anschließend die Transaktion zurückgesetzt wird. Wenn Abandon vor abschluss des Transaktionsrollbacks aufgerufen wird, ist eine Racebedingung vorhanden, sodass der Aufruf Abandon nicht mehr reagiert. Dies kann durch das folgende Pseudocodebeispiel veranschaulicht werden.

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

Dies ist nicht das empfohlene Muster für das Arbeiten mit ReceiveContext. Stattdessen sollte der Try/Catch-Block außerhalb des Transaktionsbereichs platziert werden.

Abandon(TimeSpan)

Bewirkt, dass der Zustandsautomat mit dem angegebenen Timeoutwert in den verlassenen Zustand wechselt.

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)

Parameter

timeout
TimeSpan

Das Timeout für den Vorgang zum Abbrechen, der abgeschlossen werden soll.

Gilt für:

Abandon(Exception, TimeSpan)

Bewirkt, dass der Zustandsautomat mit dem angegebenen Ausnahme- und Timeoutwert in den verlassenen Zustand wechselt.

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)

Parameter

exception
Exception

Die Ausnahme, die den Abbruchvorgang verursacht.

timeout
TimeSpan

Das Timeout für den Vorgang zum Abbrechen, der abgeschlossen werden soll.

Gilt für: