Lingua

ReceiveContext.Abandon Metodo

Definizione

Fa sì che la macchina a stati passi allo stato abbandonato.

Overload

Nome Descrizione
Abandon(TimeSpan)

Fa sì che la macchina a stati passi allo stato abbandonato con il valore di timeout specificato.

Abandon(Exception, TimeSpan)

Fa sì che la macchina a stati passi allo stato abbandonato con l'eccezione e il valore di timeout specificati.

Commenti

Abandon può smettere di rispondere quando è presente una transazione di ambiente e viene chiamato e Complete successivamente viene eseguito il rollback della transazione. Se Abandon viene chiamato prima del completamento del rollback della transazione, esisterà una race condition, causando l'arresto della chiamata Abandon . Questo può essere illustrato nell'esempio di pseudo-codice seguente

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

Questo non è il modello consigliato per l'uso di ReceiveContext. Al contrario, il blocco try/catch deve essere posizionato all'esterno dell'ambito della transazione.

Abandon(TimeSpan)

Fa sì che la macchina a stati passi allo stato abbandonato con il valore di timeout specificato.

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)

Parametri

timeout
TimeSpan

Timeout per il completamento dell'operazione di abbandono.

Si applica a

Abandon(Exception, TimeSpan)

Fa sì che la macchina a stati passi allo stato abbandonato con l'eccezione e il valore di timeout specificati.

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)

Parametri

exception
Exception

Eccezione che causa l'operazione di abbandono.

timeout
TimeSpan

Timeout per il completamento dell'operazione di abbandono.

Si applica a