Partilhar 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 asyncResult);
member this.EndCommit : IAsyncResult -> unit
Public Sub EndCommit (asyncResult As IAsyncResult)

Parâmetros

asyncResult
IAsyncResult

O IAsyncResult objeto associado ao compromisso assíncrono.

Exceções

BeginCommit(AsyncCallback, Object) é chamado e a transação reverte 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 gerenciadores de recursos e inscrição na transação votaram no resultado da transação e o TransactionManager usuário decidiu confirmar ou anular a transação. A segunda fase do processamento é sempre assíncrona. Portanto, não há garantia de que os dados confirmados de dentro de uma determinada transação estarão imediatamente disponíveis posteriormente quando não estiverem usando outra transação para exibir esses dados.

Aplica-se a