Compartilhar via


CommittableTransaction.EndCommit(IAsyncResult) Método

Definição

Encerra uma tentativa de confirmar a transação de forma assíncrona.

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)

Parâmetros

asyncResultar
IAsyncResult

O objeto IAsyncResult associado à confirmação assíncrona.

Exceções

BeginCommit(AsyncCallback, Object) é chamado e a transação é revertida pela primeira vez.

Comentários

Você deve chamar esse método no delegado de retorno de chamada especificado como um parâmetro para o BeginCommit método, quando terminar qualquer trabalho de limpeza associado ao compromisso assíncrono. Você também pode chamar esse método antecipadamente sem esperar pelo delegado. Se, quando você chamar esse método, a transação não tiver sido concluída, esse método aguardará sua conclusão.

Cuidado

A CompletedSynchronously propriedade retornada é asyncResult sempre false, mesmo que a operação seja concluída de forma síncrona.

Commit e EndCommit bloqueie até que a primeira fase do processamento de transações seja concluída. A primeira fase termina depois que todos os gerentes de recursos e inscrições na transação votaram no resultado da transação e o TransactionManager administrador decidiu confirmar ou anular a transação. A segunda fase do processamento é sempre assíncrona. Portanto, não há garantia de que os dados apenas confirmados de dentro de uma determinada transação estarão imediatamente disponíveis posteriormente ao não usar outra transação para exibir esses dados.

Aplica-se a