次の方法で共有


CommittableTransaction.EndCommit(IAsyncResult) メソッド

定義

非同期的にトランザクションをコミットする試みを終了します。

public:
 void EndCommit(IAsyncResult ^ asyncResult);
public:
 void EndCommit(IAsyncResult ^ ar);
public void EndCommit (IAsyncResult asyncResult);
public void EndCommit (IAsyncResult ar);
member this.EndCommit : IAsyncResult -> unit
member this.EndCommit : IAsyncResult -> unit
Public Sub EndCommit (asyncResult As IAsyncResult)
Public Sub EndCommit (ar As IAsyncResult)

パラメーター

asyncResultar
IAsyncResult

非同期のコミットに関連付けられた IAsyncResult オブジェクト。

例外

BeginCommit(AsyncCallback, Object) が呼び出され、トランザクションが初めてロールバックされます。

注釈

非同期コミットメントに関連付けられているクリーンアップ作業が完了したら、メソッドの BeginCommit パラメーターとして指定されたコールバック デリゲートでこのメソッドを呼び出す必要があります。 このメソッドは、デリゲートを待たずに早く呼び出すこともできます。 このメソッドを呼び出す時点でトランザクションが完了していない場合、このメソッドはその完了を待機します。

注意事項

返されるasyncResultプロパティはCompletedSynchronously、操作が同期的に完了した場合でも常falseに行われます。

Commit トランザクション EndCommit 処理の最初のフェーズが完了するまでブロックします。 最初のフェーズは、トランザクション内のすべてのリソース マネージャーと参加リストがトランザクションの結果に投票し、トランザクションの TransactionManager コミットまたは中止を永続的に決定した後に終了します。 処理の 2 番目のフェーズは常に非同期です。 したがって、特定のトランザクション内からコミットされたデータが、別のトランザクションを使用してこのデータを表示しない場合、その後すぐに使用できる保証はありません。

適用対象