CommittableTransaction.EndCommit(IAsyncResult) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Termina un tentativo di eseguire il commit della transazione in modo asincrono.
public:
void EndCommit(IAsyncResult ^ asyncResult);
public:
void EndCommit(IAsyncResult ^ ar);
public void EndCommit (IAsyncResult asyncResult);
public void EndCommit (IAsyncResult ar);
member this.EndCommit : IAsyncResult -> unit
member this.EndCommit : IAsyncResult -> unit
Public Sub EndCommit (asyncResult As IAsyncResult)
Public Sub EndCommit (ar As IAsyncResult)
Parametri
- asyncResultar
- IAsyncResult
Oggetto IAsyncResult associato al commit asincrono.
Eccezioni
Viene chiamato BeginCommit(AsyncCallback, Object) e viene eseguito il rollback della transazione per la prima volta.
Commenti
È necessario chiamare questo metodo nel delegato di callback specificato come parametro per il BeginCommit metodo , al termine di qualsiasi operazione di pulizia associata all'impegno asincrono. È anche possibile chiamare questo metodo in anticipo senza attendere il delegato. Se, al momento della chiamata a questo metodo, la transazione non è stata completata, questo metodo attende il completamento.
Attenzione
La CompletedSynchronously proprietà restituita da asyncResult
è sempre false
, anche se l'operazione è stata completata in modo sincrono.
Commit e EndCommit bloccano fino al completamento della prima fase dell'elaborazione delle transazioni. La prima fase termina dopo che tutti i gestori di risorse e gli inserimenti nella transazione hanno votato sul risultato della transazione e ha deciso duramente di eseguire il commit o l'interruzione TransactionManager della transazione. La seconda fase di elaborazione è sempre asincrona. Pertanto, non esiste alcuna garanzia che i dati appena sottoposti a commit dall'interno di una determinata transazione saranno immediatamente disponibili quando non si usa un'altra transazione per visualizzare questi dati.