ISinglePhaseNotification Interface

Definição

Descreve um objeto de recurso que dá suporte à otimização de confirmação de fase única para participar de uma transação.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
Implementações

Comentários

Você deve observar que mesmo quando o Resource Manager implementa essa interface para dar suporte à otimização de confirmação de fase única, não há garantia de que ela receba uma confirmação de fase única.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. Em vez disso, o Gerenciador de transações ainda pode enviar duas notificações de confirmação de fase.The transaction manager can still send two phase commit notifications instead.

Para inscrever seu Gerenciador de recursos como um participante em uma transação, EnlistVolatile chame o método EnlistDurable ou o método Transaction da classe.To enlist your resource manager as a participant in a transaction, call the EnlistVolatile method or the EnlistDurable method of the Transaction class. Especificamente, o EnlistmentOptions parâmetro deve ser None igual a para garantir que uma única confirmação de fase seja executada.Specifically, the EnlistmentOptions parameter should equal to None to ensure that a single phase commit is performed. Se ele for definido erroneamente como, nenhuma EnlistDuringPrepareRequiredconfirmação de fase única ocorrerá.If it is mistakenly set to EnlistDuringPrepareRequired, no single phase commit occurs.

Como a ISinglePhaseNotification interface deriva IEnlistmentNotification da interface, o Gerenciador de recursos também deve implementar todos os métodos do último para notificações de confirmação de duas fases.Since 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. É a opção do Gerenciador de transações saber se a confirmação de duas fases ou a otimização de confirmação de fase única é usada com esse Gerenciador de recursos.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. No entanto, a implementação dessa interface dá ao Gerenciador de recursos a oportunidade de aproveitar a otimização quando ela está disponível.However, implementing this interface gives the resource manager the opportunity to take advantage of the optimization when it is available.

Se a otimização for usada e o Gerenciador de transações chamar SinglePhaseCommit o método do recurso inscrito, o Gerenciador de recursos deverá responder a essa chamada usando vários métodos SinglePhaseEnlistment da classe para informar ao Gerenciador de transações se o a transação deve ser confirmada ou revertida.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.

Métodos

Commit(Enlistment)

Notifica um objeto inscrito de que uma transação está sendo confirmada.Notifies an enlisted object that a transaction is being committed.

(Herdado de IEnlistmentNotification)
InDoubt(Enlistment)

Notifica um objeto inscrito de que o status de uma transação está duvidoso.Notifies an enlisted object that the status of a transaction is in doubt.

(Herdado de IEnlistmentNotification)
Prepare(PreparingEnlistment)

Notifica um objeto inscrito de que uma transação está sendo preparada para confirmação.Notifies an enlisted object that a transaction is being prepared for commitment.

(Herdado de IEnlistmentNotification)
Rollback(Enlistment)

Notifica um objeto inscrito de que uma transação está sendo revertida (anulada).Notifies an enlisted object that a transaction is being rolled back (aborted).

(Herdado de IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment)

Representa a implementação do gerenciador de recursos do retorno de chamada para a otimização de confirmação de fase única.Represents the resource manager's implementation of the callback for the single phase commit optimization.

Aplica-se a

Veja também