ISinglePhaseNotification Interface

Definição

Descreve um objeto de recurso que suporta otimização de commit de fase única para participar numa transação.

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

Observações

Deves notar que, mesmo quando o teu gestor de recursos implementa esta interface para suportar otimização de commit de fase única, não é garantido que receba um commit de fase única. O gestor de transações ainda pode enviar notificações de commit em duas fases.

Para recrutar o seu gestor de recursos como participante numa transação, chame o EnlistVolatile método ou o EnlistDurable método da Transaction turma. Especificamente, o EnlistmentOptions parâmetro deve ser igual a None para garantir que um commit de fase única é realizado. Se estiver erroneamente definido para EnlistDuringPrepareRequired, não ocorre um commit de fase única.

Como a ISinglePhaseNotification interface deriva da IEnlistmentNotification interface, o gestor de recursos deve também implementar todos os métodos deste último para notificações de commit em duas fases. Cabe ao gestor de transações decidir se a otimização de compromisso em duas fases ou de fase única é utilizada com este gestor de recursos. No entanto, implementar esta interface dá ao gestor de recursos a oportunidade de tirar partido da otimização quando esta estiver disponível.

Se for usada a otimização e o gestor de transações chamar o SinglePhaseCommit método do recurso recrutado, o gestor de recursos deve responder a esta chamada utilizando vários métodos da SinglePhaseEnlistment classe para informar o gestor de transações se a transação deve ser comprometida ou revertida.

Métodos

Name Description
Commit(Enlistment)

Notifica um objeto alistado de que uma transação está a ser realizada.

(Herdado de IEnlistmentNotification)
InDoubt(Enlistment)

Notifica um objeto alistado que o estado de uma transação está em dúvida.

(Herdado de IEnlistmentNotification)
Prepare(PreparingEnlistment)

Notifica o objeto alistado que uma transação está a ser preparada para compromisso.

(Herdado de IEnlistmentNotification)
Rollback(Enlistment)

Notifica um objeto registado que uma transação está a ser revertida (abortada).

(Herdado de IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment)

Representa a implementação do callback pelo gestor de recursos para a otimização de compromisso de fase única.

Aplica-se a

Ver também