ISinglePhaseNotification Interface
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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. |