NOTIFICATION_MASK

列出可由登記接收的不同通知類型。

TRANSACTION_NOTIFY_MASK

0x3FFFFFFF

表示交易通知之所有有效位的遮罩。

TRANSACTION_NOTIFY_PREPREPARE

0x00000001

此通知會在用戶端呼叫 CommitTransaction 之後呼叫,而且沒有資源管理員 (RM) 支援單階段認可,或是在 TM) 呼叫 PrePrepareEnlistment (上層交易管理員。 此通知是由 RM 接收,指出其應該完成任何可能導致其他 RM 在交易中登記的工作,例如清除其快取。 完成這些作業之後,RM 必須呼叫 PrePrepareComplete。 若要收到此通知,RM 也必須支援 TRANSACTION_NOTIFY_PREPARETRANSACTION_NOTIFY_COMMIT

TRANSACTION_NOTIFY_PREPARE

0x00000002

完成 TRANSACTION_NOTIFY_PREPREPARE 處理之後,就會呼叫此通知。 它會向 RM 發出訊號,以完成與此登記相關聯的所有工作,以便保證認可作業可以成功,而中止作業也可能成功。 一般而言,交易的大量工作會在準備階段完成。 針對長期 RM,他們必須先記錄其狀態,才能呼叫 PrepareComplete 函式 。 這是 RM 要求回復交易的最後一個機會。

TRANSACTION_NOTIFY_COMMIT

0x00000004

此通知會發出 RM 的訊號,以完成與此登記相關聯的所有工作。 一般而言,RM 會釋放任何鎖定,釋放復原交易所需的任何資訊。 RM 必須在完成這些作業時呼叫 CommitComplete 函式來回應。

TRANSACTION_NOTIFY_ROLLBACK

0x00000008

此通知會發出 RM 的訊號,以復原與交易相關聯的所有工作。

TRANSACTION_NOTIFY_PREPREPARE_COMPLETE

0x00000010

此通知會向上層 TM 發出訊號,指出預先準備的作業已順利完成。

TRANSACTION_NOTIFY_PREPARE_COMPLETE

0x00000020

此通知會向上層 TM 發出訊號,指出準備作業已順利完成。

TRANSACTION_NOTIFY_COMMIT_COMPLETE

0x00000040

此通知會向上層 TM 發出訊號,指出認可作業已順利完成。

TRANSACTION_NOTIFY_ROLLBACK_COMPLETE

0x00000080

此通知會向上層 TM 發出訊號,指出復原作業已順利完成。

TRANSACTION_NOTIFY_RECOVER

0x00000100

此通知會向 VM 發出訊號,指出他們應該復原其狀態,因為必須重新傳遞交易結果。 例如,當 RM 復原時,以及當交易保持不確定時。 解決不確定狀態後,就會傳遞此通知。

TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT

0x00000200

此通知會發出 RM 的訊號,以完成並認可交易,而不需使用兩階段認可通訊協定。 如果 RM 想要使用雙階段運算,它必須藉由呼叫 SinglePhaseReject 函式來回應。

TRANSACTION_NOTIFY_DELEGATE_COMMIT

0x00000400

KTM 向上層 TM 發出訊號,以執行認可作業。

TRANSACTION_NOTIFY_RECOVER_QUERY

0x00000800

KTM 向上層 TM 發出訊號,以查詢不確定交易的狀態。

TRANSACTION_NOTIFY_ENLIST_PREPREPARE

0x00001000

此通知會向上層 TM 發出訊號,指出預先準備的通知必須在指定的登記上傳遞。

TRANSACTION_NOTIFY_LAST_RECOVER

0x00002000

此通知表示此 RM 的復原作業已完成。

TRANSACTION_NOTIFY_INDOUBT

0x00004000

指定的交易處於不確定狀態。 當交易備妥時,RM 會在復原作業期間收到此通知,但沒有更進階的交易管理員 (TM) 可用。 例如,當交易涉及遠端 TM 且該節點無法使用、其節點無法使用,或本機 分散式交易協調器 服務無法使用時,交易狀態不確定。

TRANSACTION_NOTIFY_TM_ONLINE

0x02000000

TM 已上線並接受要求。

TRANSACTION_NOTIFY_REQUEST_OUTCOME

0x20000000

向 VM 發出訊號,指出有可用的結果資訊,以及應該提出該資訊的要求。

TRANSACTION_NOTIFY_COMMIT_FINALIZE

0x40000000

保留的。

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
標頭
KtmTypes.h (包含 Windows.h)

另請參閱

分散式交易協調器

核心交易管理員常數

CreateEnlistment

CommitComplete

GetNotificationResourceManager

GetNotificationResourceManagerAsync

PrepareComplete

SinglePhaseReject

TRANSACTION_NOTIFICATION