다음을 통해 공유


IPromotableSinglePhaseNotification 인터페이스

정의

리소스 관리자 내부의 분산되지 않은 트랜잭션에 대한 커밋 대리자로 작동하는 개체에 대해 설명합니다.

public interface class IPromotableSinglePhaseNotification : System::Transactions::ITransactionPromoter
public interface IPromotableSinglePhaseNotification : System.Transactions.ITransactionPromoter
type IPromotableSinglePhaseNotification = interface
    interface ITransactionPromoter
Public Interface IPromotableSinglePhaseNotification
Implements ITransactionPromoter
구현

설명

PSPE(승격 가능한 인리스트먼트)를 사용하면 데이터베이스와 같은 리소스가 트랜잭션에 참여하는 유일한 엔터티인 경우 트랜잭션의 소유권을 가져올 수 있습니다. 나중에 필요한 경우 인프라는 여전히 트랜잭션을 System.Transactions MSDTC로 에스컬레이션할 수 있습니다. 자세한 내용은 단일 단계 커밋 및 승격 가능한 단일 단계 알림을 사용하여 최적화를 참조하세요.

이 인터페이스를 구현하는 리소스 관리자는 클래스의 메서드를 통해 트랜잭션에 대한 인리스트먼트에 System.Transactions 내부 비 분산 트랜잭션의 커밋 제어를 EnlistPromotableSinglePhaseTransaction 위임합니다.

메서드가 ITransactionPromoter.Promote 호출되면 이 인터페이스의 구현은 전파 토큰의 형태로 분산 트랜잭션을 생성하고 에 반환 System.Transactions해야 합니다.

메서드를 사용하여 EnlistPromotableSinglePhase 이 인터페이스를 트랜잭션의 참가자로 구현하는 개체를 등록한 후 트랜잭션 관리자는 개체의 메서드, 메서드 또는 메서드 SinglePhaseCommit 를 호출 Promote 하여 트랜잭션이 승격, 커밋 또는 Rollback 롤백될 때 참가자에게 알 수 있습니다.

자세한 내용은 단일 단계 커밋 및 승격 가능한 단일 단계 알림을 사용하여 최적화를 참조하세요.

메서드

Initialize()

참여가 성공적으로 완료되었음을 트랜잭션 참가 요소에게 알립니다.

Promote()

위임된 트랜잭션의 에스컬레이션이 요청되었음을 참여한 개체에 알립니다.

(다음에서 상속됨 ITransactionPromoter)
Rollback(SinglePhaseEnlistment)

참여한 개체에게 트랜잭션이 롤백 중임을 알립니다.

SinglePhaseCommit(SinglePhaseEnlistment)

참여한 개체에게 트랜잭션이 커밋 중임을 알립니다.

적용 대상

추가 정보