System.Win.Mtsobj.TMtsAutoObject.EnableCommit
Delphi
procedure EnableCommit;
C++
void __fastcall EnableCommit();
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | System.Win.Mtsobj.pas System.Win.Mtsobj.hpp |
System.Win.Mtsobj | TMtsAutoObject |
説明
クライアントがステート情報を解放しないでトランザクションを完了できるようにします。
EnableCommit メソッドを呼び出すと,MTS オートメーションオブジェクトがステート情報を解放しないで現在のトランザクションを完了できることを示すことができます。SetComplete メソッド(このメソッドも現在のトランザクションがコミットできることを示す)と違って,EnableCommit は MTS が MTS オートメーションオブジェクトを非アクティブにすることを許可しません。このため,MTS オートメーションオブジェクトは複数のインターフェース呼び出しにわたってステート情報を保持しつつ,オブジェクトをトランザクションに割り当てたクライアントにはコミットを許可します。
デフォルトでは,DisableCommit メソッドが呼び出されない限り,トランザクションはインターフェース呼び出しが終了すると完了できます。MTS オートメーションオブジェクトが DisableCommit を呼び出していない限り,EnableCommit を呼び出す必要はありません。
メモ: EnableCommit は現在のトランザクションが完了することを許可しますが,それは自動的にトランザクションをコミットしません。MTS オートメーションオブジェクトを割り当てたクライアントが,明示的にトランザクションをコミットしなければなりません。MTS が自動的にトランザクションを開始させた場合(MTS オートメーションオブジェクトがインターフェース呼び出しでトランザクションを要求するため),トランザクションはデータモジュールが SetComplete を呼び出すまでコミットされません。