ISinglePhaseNotification ISinglePhaseNotification ISinglePhaseNotification ISinglePhaseNotification Interface

定義

トランザクションに参加するための単一フェーズ コミットの最適化をサポートしているリソース オブジェクトについて説明します。Describes a resource object that supports single phase commit optimization to participate in a transaction.

public interface class ISinglePhaseNotification : System::Transactions::IEnlistmentNotification
public interface ISinglePhaseNotification : System.Transactions.IEnlistmentNotification
type ISinglePhaseNotification = interface
    interface IEnlistmentNotification
Public Interface ISinglePhaseNotification
Implements IEnlistmentNotification
実装

注釈

Resource manager では、単一フェーズコミットの最適化をサポートするためにこのインターフェイスを実装している場合でも、単一フェーズコミットを受け取ることは保証されていないことに注意してください。You should note that even when your resource manager implements this interface to support single phase commit optimization, it is not guaranteed that it receives a single phase commit. トランザクションマネージャーは、代わりに2フェーズコミット通知を送信できます。The transaction manager can still send two phase commit notifications instead.

リソースマネージャーをトランザクションの参加要素として参加させるにEnlistVolatile EnlistDurableは、 Transactionクラスのメソッドまたはメソッドを呼び出します。To enlist your resource manager as a participant in a transaction, call the EnlistVolatile method or the EnlistDurable method of the Transaction class. 具体的にはEnlistmentOptions 、単一フェーズコミットNoneが確実に実行されるように、パラメーターはと同じである必要があります。Specifically, the EnlistmentOptions parameter should equal to None to ensure that a single phase commit is performed. 誤ってにEnlistDuringPrepareRequired設定されている場合、1フェーズコミットは実行されません。If it is mistakenly set to EnlistDuringPrepareRequired, no single phase commit occurs.

インターフェイスはIEnlistmentNotificationインターフェイスから派生しているため、リソースマネージャーは2フェーズコミット通知のために後者のすべてのメソッドも実装する必要があります。 ISinglePhaseNotificationSince the ISinglePhaseNotification interface derives from the IEnlistmentNotification interface, the resource manager must also implement all the methods of the latter for two phase commit notifications. このリソースマネージャーでは、2フェーズコミットまたは単一フェーズコミット最適化が使用されているかどうかについて、トランザクションマネージャーが選択します。It is the transaction manager's choice as to whether two phase commit or the single phase commit optimization is used with this resource manager. ただし、このインターフェイスを実装することにより、リソースマネージャーは、使用可能な場合に最適化を利用できるようになります。However, implementing this interface gives the resource manager the opportunity to take advantage of the optimization when it is available.

最適化が使用され、トランザクションマネージャーが参加しSinglePhaseCommitたリソースのメソッドを呼び出す場合、リソースマネージャーは、 SinglePhaseEnlistmentクラスのさまざまなメソッドを使用してこの呼び出しに応答し、トランザクションはコミットまたはロールバックされます。If the optimization is used and the transaction manager calls the SinglePhaseCommit method of the enlisted resource, the resource manager should respond to this call by using various methods of the SinglePhaseEnlistment class to inform the transaction manager if the transaction is to be committed or rolled back.

メソッド

Commit(Enlistment) Commit(Enlistment) Commit(Enlistment) Commit(Enlistment)

トランザクションのコミット中であることを参加オブジェクトに通知します。Notifies an enlisted object that a transaction is being committed.

(Inherited from IEnlistmentNotification)
InDoubt(Enlistment) InDoubt(Enlistment) InDoubt(Enlistment) InDoubt(Enlistment)

トランザクションのステータスが未決定であることを参加オブジェクトに通知します。Notifies an enlisted object that the status of a transaction is in doubt.

(Inherited from IEnlistmentNotification)
Prepare(PreparingEnlistment) Prepare(PreparingEnlistment) Prepare(PreparingEnlistment) Prepare(PreparingEnlistment)

トランザクションのコミットの準備中であることを参加オブジェクトに通知します。Notifies an enlisted object that a transaction is being prepared for commitment.

(Inherited from IEnlistmentNotification)
Rollback(Enlistment) Rollback(Enlistment) Rollback(Enlistment) Rollback(Enlistment)

トランザクションのロールバック (中止) 中であることを参加オブジェクトに通知します。Notifies an enlisted object that a transaction is being rolled back (aborted).

(Inherited from IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment) SinglePhaseCommit(SinglePhaseEnlistment) SinglePhaseCommit(SinglePhaseEnlistment) SinglePhaseCommit(SinglePhaseEnlistment)

単一フェーズ コミットの最適化に対応したリソース マネージャーにおけるコールバックの実装を表します。Represents the resource manager's implementation of the callback for the single phase commit optimization.

適用対象

こちらもご覧ください