Compartir a través de


NOTIFICATION_MASK

Enumera los diferentes tipos de notificaciones que puede recibir una inscripción.

TRANSACTION_NOTIFY_MASK

0x3FFFFFFF

Máscara que indica todos los bits válidos para una notificación de transacción.

TRANSACTION_NOTIFY_PREPREPARE

0x00000001

Se llama a esta notificación después de que un cliente llame a CommitTransaction y ningún administrador de recursos (RM) admite la confirmación de una sola fase o un administrador de transacciones superior (TM) llama a PrePrepareEnlistment. Las MÁQUINAS virtuales reciben esta notificación, lo que indica que deben completar cualquier trabajo que pueda provocar que otras RMs necesiten inscribirse en una transacción, como vaciar su caché. Después de completar estas operaciones, RM debe llamar a PrePrepareComplete. Para recibir esta notificación, RM también debe admitir TRANSACTION_NOTIFY_PREPARE y TRANSACTION_NOTIFY_COMMIT.

TRANSACTION_NOTIFY_PREPARE

0x00000002

Se llama a esta notificación una vez completada la TRANSACTION_NOTIFY_PREPREPARE procesamiento. Indica al RM que complete todo el trabajo asociado a esta inscripción para que pueda garantizar que una operación de confirmación se pueda realizar correctamente y que una operación de anulación también se pueda realizar correctamente. Normalmente, la mayor parte del trabajo de una transacción se realiza durante la fase de preparación. Para las MÁQUINAS virtuales duraderas, deben registrar su estado antes de llamar a la función PrepareComplete . Esta es la última oportunidad para que el RM solicite que la transacción se revierte.

TRANSACTION_NOTIFY_COMMIT

0x00000004

Esta notificación indica al RM que complete todo el trabajo asociado a esta inscripción. Normalmente, rm libera los bloqueos, libera cualquier información necesaria para revertir la transacción. El RM debe responder llamando a la función CommitComplete cuando haya terminado estas operaciones.

TRANSACTION_NOTIFY_ROLLBACK

0x00000008

Esta notificación indica al RM que deshace todo el trabajo que ha realizado, que está asociado a la transacción.

TRANSACTION_NOTIFY_PREPREPARE_COMPLETE

0x00000010

Esta notificación indica al TM superior que se completó correctamente una operación de preparación previa.

TRANSACTION_NOTIFY_PREPARE_COMPLETE

0x00000020

Esta notificación indica al TM superior que una operación de preparación se completó correctamente.

TRANSACTION_NOTIFY_COMMIT_COMPLETE

0x00000040

Esta notificación indica al TM superior que una operación de confirmación se completó correctamente.

TRANSACTION_NOTIFY_ROLLBACK_COMPLETE

0x00000080

Esta notificación indica al TM superior que se completó correctamente una operación de reversión.

TRANSACTION_NOTIFY_RECOVER

0x00000100

Esta notificación indica a los RMs que deben recuperar su estado porque se debe volver a entregar un resultado de transacción. Por ejemplo, cuando se recupera un RM y cuando hay transacciones que quedan en duda. Esta notificación se entrega una vez resuelto el estado en duda.

TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT

0x00000200

Esta notificación indica al RM que complete y confirme la transacción sin usar un protocolo de confirmación en dos fases. Si rm quiere usar una operación de dos fases, debe responder llamando a la función SinglePhaseReject .

TRANSACTION_NOTIFY_DELEGATE_COMMIT

0x00000400

KTM señala al TM superior para realizar una operación de confirmación.

TRANSACTION_NOTIFY_RECOVER_QUERY

0x00000800

KTM señala al TM superior para consultar el estado de una transacción dudosa.

TRANSACTION_NOTIFY_ENLIST_PREPREPARE

0x00001000

Esta notificación indica al TM superior que las notificaciones previas a la preparación deben entregarse en la inscripción especificada.

TRANSACTION_NOTIFY_LAST_RECOVER

0x00002000

Esta notificación indica que la operación de recuperación está completa para este RM.

TRANSACTION_NOTIFY_INDOUBT

0x00004000

La transacción especificada está en estado dudoso. Rm recibe esta notificación durante las operaciones de recuperación cuando se ha preparado una transacción, pero no hay ningún administrador de transacciones superior (TM) disponible. Por ejemplo, cuando una transacción implica un TM remoto y ese nodo no está disponible, su nodo no está disponible o el servicio coordinador de transacciones distribuidas local no está disponible, el estado de la transacción está en duda.

TRANSACTION_NOTIFY_TM_ONLINE

0x02000000

Tm está en línea y acepta solicitudes.

TRANSACTION_NOTIFY_REQUEST_OUTCOME

0x20000000

Señala a las MÁQUINAS virtuales que hay información de resultados disponible y que se debe realizar una solicitud de esa información.

TRANSACTION_NOTIFY_COMMIT_FINALIZE

0x40000000

Reservado.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Encabezado
KtmTypes.h (incluye Windows.h)

Consulte también

Coordinador de transacciones distribuidas

Constantes del Administrador de transacciones de kernel

CreateEnlistment

CommitComplete

GetNotificationResourceManager

GetNotificationResourceManagerAsync

PrepareComplete

SinglePhaseReject

TRANSACTION_NOTIFICATION