Udostępnij za pośrednictwem


CommittableTransaction.EndCommit(IAsyncResult) Metoda

Definicja

Kończy próbę asynchronicznego zatwierdzenia transakcji.

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)

Parametry

asyncResultar
IAsyncResult

Obiekt IAsyncResult skojarzony z zobowiązaniem asynchronicznym.

Wyjątki

BeginCommit(AsyncCallback, Object) jest wywoływana, a transakcja jest przywracana po raz pierwszy.

Uwagi

Należy wywołać tę metodę w delegatu wywołania zwrotnego określonego jako parametr BeginCommit metody po zakończeniu pracy oczyszczania skojarzonej z zobowiązaniem asynchronicznym. Tę metodę można również wywołać wcześnie bez oczekiwania na delegata. Jeśli do czasu wywołania tej metody transakcja nie została ukończona, ta metoda czeka na jej zakończenie.

Przestroga

Właściwość CompletedSynchronously zwracana przez asyncResult element jest zawsze false, nawet jeśli operacja została ukończona synchronicznie.

Commit i EndCommit blokuj do momentu ukończenia pierwszej fazy przetwarzania transakcji. Pierwsza faza kończy się po tym, jak wszystkie menedżery zasobów i rejestracje w transakcji głosowały na wynik transakcji i TransactionManager trwale zdecydowała się zatwierdzić lub przerwać transakcję. Druga faza przetwarzania jest zawsze asynchroniczna. W związku z tym nie ma gwarancji, że dane właśnie zatwierdzone z poziomu danej transakcji będą natychmiast dostępne później, gdy nie będą używane innej transakcji do wyświetlania tych danych.

Dotyczy