閱讀英文

共用方式為


交易

交易是定義工作邏輯單位的物件。 只要有參考交易的控制碼,交易就會保持運作,而且如果交易尚未認可或回復,則會將其視為作用中。 如果在認可或復原發生之前已關閉交易的所有控制碼,則會回復交易。

請考慮建立交易以限定其作業範圍的使用者模式交易用戶端案例,然後在一或多個資源管理員上執行更新。 發生下列情況:

  1. 用戶端會呼叫 CreateTransaction 函式來建立交易,並接收該交易的控制碼做為傳回值。

    交易可以由任意數目的進程開啟或繼承;因此,每個進程都會涉及交易。 上述任何進程的失敗會導致交易中止。

    此交易可能尚未持續。 如果交易使用假設中止記錄,則只有已達到備妥狀態的交易才能跨系統失敗復原。

  2. 用戶端必須將交易明確傳遞至資源管理員。

  3. 用戶端會使用一或多個 RM 執行其所有交易作業,例如交易檔案系統。

  4. 用戶端會呼叫 CommitTransaction 函式。

  5. 資源管理員會收到來自 KTM 的通知,以準備並認可其資料。

交易和執行緒

交易與執行緒不同。 多個執行緒或進程可以是單一交易的一部分。 相反地,執行緒可以是不同時間數個不同交易的一部分。

交易函式

下列函式會與交易搭配使用。

函式 描述
CommitTransaction 要求認可指定的交易。
CommitTransactionAsync 要求認可指定的交易。
CreateTransaction 建立新的交易對象。
GetTransactionInformation 傳回所指定交易的要求資訊。
OpenTransaction 開啟現有的交易。
RollbackTransaction 要求要復原指定的交易。
RollbackTransactionAsync 要求要復原指定的交易。 此函式會以非同步方式傳回。
SetTransactionInformation 設定指定交易的交易資訊。