CommittableTransaction.EndCommit Method (IAsyncResult)
Ends an attempt to commit the transaction asynchronously.
Assembly: System.Transactions (in System.Transactions.dll)
You should call this method in the callback delegate specified as a parameter to the BeginCommit method, when you have finished any cleanup work associated with the asynchronous commitment. You can also call this method early without waiting for the delegate. If, by the time you call this method, the transaction has not completed, this method waits for its completion.
The CompletedSynchronously property returned by asyncResult is always false, even if the operation completed synchronously.
Commit and M:System.Transactions.CommittableTransaction.EndCommit block until the first phase of transaction processing is complete. The first phase ends after all resource managers and enlistments in the transaction have voted on the transaction outcome and the TransactionManager has durably decided to commit or abort the transaction. The second phase of processing is always asynchronous. Therefore, there is no guarantee that data just committed from within a given transaction will be immediately available afterwards when not using another transaction to view this data.
Available since 2.0