NOTIFICATION_MASK

Lista os diferentes tipos de notificações que podem ser recebidas por uma inscrição.

TRANSACTION_NOTIFY_MASK

0x3FFFFFFF

Uma máscara que indica todos os bits válidos para uma notificação de transação.

TRANSACTION_NOTIFY_PREPREPARE

0x00000001

Essa notificação é chamada depois que um cliente chama CommitTransaction e nenhum gerenciador de recursos (RM) dá suporte à confirmação de fase única ou a um TM (gerenciador de transações) superior chama PrePrepareEnlistment. Essa notificação é recebida pelas RMs indicando que elas devem concluir qualquer trabalho que possa fazer com que outras RMs precisem se inscrever em uma transação, como liberar seu cache. Depois de concluir essas operações, a RM deve chamar PrePrepareComplete. Para receber essa notificação, a RM também deve dar suporte a TRANSACTION_NOTIFY_PREPARE e TRANSACTION_NOTIFY_COMMIT.

TRANSACTION_NOTIFY_PREPARE

0x00000002

Essa notificação é chamada após a conclusão do processamento TRANSACTION_NOTIFY_PREPREPARE. Ele sinaliza a RM para concluir todo o trabalho associado a essa inscrição para que possa garantir que uma operação de confirmação possa ter êxito e que uma operação de anulação também possa ser bem-sucedida. Normalmente, a maior parte do trabalho para uma transação é feita durante a fase de preparação. Para RMs duráveis, eles devem registrar seu estado antes de chamar a função PrepareComplete . Essa é a última chance para a RM solicitar que a transação seja revertida.

TRANSACTION_NOTIFY_COMMIT

0x00000004

Essa notificação sinaliza a RM para concluir todo o trabalho associado a essa inscrição. Normalmente, o RM libera todos os bloqueios, libera todas as informações necessárias para reverter a transação. O RM deve responder chamando a função CommitComplete quando tiver terminado essas operações.

TRANSACTION_NOTIFY_ROLLBACK

0x00000008

Essa notificação sinaliza a RM para desfazer todo o trabalho que ele fez associado à transação.

TRANSACTION_NOTIFY_PREPREPARE_COMPLETE

0x00000010

Essa notificação sinaliza ao TM superior que uma operação de pré-preparação foi concluída com êxito.

TRANSACTION_NOTIFY_PREPARE_COMPLETE

0x00000020

Essa notificação sinaliza ao TM superior que uma operação de preparação foi concluída com êxito.

TRANSACTION_NOTIFY_COMMIT_COMPLETE

0x00000040

Essa notificação sinaliza ao TM superior que uma operação de confirmação foi concluída com êxito.

TRANSACTION_NOTIFY_ROLLBACK_COMPLETE

0x00000080

Essa notificação sinaliza para o TM superior que uma operação de reversão foi concluída com êxito.

TRANSACTION_NOTIFY_RECOVER

0x00000100

Essa notificação sinaliza às RMs que elas devem recuperar o estado porque um resultado da transação deve ser resgatado. Por exemplo, quando uma RM é recuperada e quando há transações deixadas em dúvida. Essa notificação é entregue quando o estado em dúvida é resolvido.

TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT

0x00000200

Essa notificação sinaliza a RM para concluir e confirmar a transação sem usar um protocolo de confirmação em duas fases. Se a RM quiser usar uma operação de duas fases, ela deverá responder chamando a função SinglePhaseReject .

TRANSACTION_NOTIFY_DELEGATE_COMMIT

0x00000400

A KTM está sinalizando para o TM superior para executar uma operação de confirmação.

TRANSACTION_NOTIFY_RECOVER_QUERY

0x00000800

A KTM está sinalizando para o TM superior para consultar o status de uma transação em dúvida.

TRANSACTION_NOTIFY_ENLIST_PREPREPARE

0x00001000

Essa notificação sinaliza para o TM superior que as notificações de pré-preparação devem ser entregues na inscrição especificada.

TRANSACTION_NOTIFY_LAST_RECOVER

0x00002000

Essa notificação indica que a operação de recuperação está concluída para essa RM.

TRANSACTION_NOTIFY_INDOUBT

0x00004000

A transação especificada está em um estado de dúvida. A RM recebe essa notificação durante operações de recuperação quando uma transação foi preparada, mas não há nenhum TM (gerenciador de transações) superior disponível. Por exemplo, quando uma transação envolve uma TM remota e esse nó não está disponível, seu nó não está disponível ou o serviço de Coordenador de Transações Distribuídas local não está disponível, o estado da transação está em dúvida.

TRANSACTION_NOTIFY_TM_ONLINE

0x02000000

O TM está online e aceitando solicitações.

TRANSACTION_NOTIFY_REQUEST_OUTCOME

0x20000000

Sinaliza para RMs que há informações de resultado disponíveis e que uma solicitação para essas informações deve ser feita.

TRANSACTION_NOTIFY_COMMIT_FINALIZE

0x40000000

Reservado.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista
Servidor mínimo com suporte
Windows Server 2008
Cabeçalho
KtmTypes.h (inclua Windows.h)

Confira também

Coordenador de Transações Distribuídas

Constantes do Gerenciador de Transações do Kernel

CreateEnlistment

CommitComplete

GetNotificationResourceManager

GetNotificationResourceManagerAsync

PrepareComplete

SinglePhaseReject

TRANSACTION_NOTIFICATION