ITransactionResourceAsync

 

Applies To: Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server Technical Preview, Windows Vista

This is a callback interface implemented by the resource manager. The transaction manager invokes this callback interface to deliver phase-one and phase-two notifications to the resource manager. The communication protocol using this interface is asynchronous. When the resource manager receives a callback on this interface, it should queue the request and immediately return from the callback. The resource manager should then asynchronously process the queued request using its own threads to prepare, commit, or abort the transaction.

When to Implement

A resource manager of the DTC needs to implement this interface.

When to Use

The MSDTC Proxy uses this interface to deliver phase-one and phase-two notifications to the resource manager. Upon receiving the notifications the resource manager should asynchronously prepare, commit or abort the transaction.

Methods in Vtable Order

ITransactionResourceAsync methods Description
PrepareRequest The transaction manager is requesting that the resource manager prepare the transaction to commit. This is phase one of the two-phase commit protocol.
CommitRequest The transaction manager is requesting that the resource manager commit the transaction. This is phase two of the two-phase commit protocol.
AbortRequest The transaction manager is requesting that the resource manager abort the transaction.
TMDown Called if connection to the transaction manager goes down after phase one has been completed but before phase two has been initiated.

Requirements

For an explanation of the requirement values, see Requirements (Component Services).

Platforms: Windows Server 2016, Windows 10, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista

Header: Declared in txcoord.h

See Also

ITransactionEnlistmentAsync