CommittableTransaction.EndCommit(IAsyncResult) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Finaliza un intento de confirmar la transacción de forma asincrónica.
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
Objeto IAsyncResult asociado al compromiso asincrónico.
Excepciones
BeginCommit(AsyncCallback, Object) se llama a y la transacción se revierte por primera vez.
Comentarios
Debe llamar a este método en el delegado de devolución de llamada especificado como parámetro para el BeginCommit método , cuando haya terminado cualquier trabajo de limpieza asociado al compromiso asincrónico. También puede llamar a este método temprano sin esperar al delegado. Si, en el momento en que se llama a este método, la transacción no se ha completado, este método espera su finalización.
Precaución
La CompletedSynchronously propiedad devuelta por asyncResult siempre falsees , incluso si la operación se completó sincrónicamente.
Commit y EndCommit se bloquean hasta que se complete la primera fase del procesamiento de transacciones. La primera fase finaliza después de que todos los administradores de recursos y las inscripciones en la transacción hayan votado en el resultado de la transacción y el TransactionManager ha decidido confirmar o anular la transacción de forma duradera. La segunda fase del procesamiento siempre es asincrónica. Por lo tanto, no hay ninguna garantía de que los datos confirmados desde dentro de una transacción determinada estarán disponibles inmediatamente después cuando no usen otra transacción para ver estos datos.