ISinglePhaseNotification Interfaz

Definición

Describe un objeto de recurso que admite la optimización de confirmación de fase única para participar en una transacción.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
Implementaciones

Comentarios

Tenga en cuenta que incluso cuando el administrador de recursos implementa esta interfaz para admitir la optimización de confirmación de fase única, no se garantiza que reciba una confirmación 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. El administrador de transacciones puede seguir enviando notificaciones de confirmación en dos fases.The transaction manager can still send two phase commit notifications instead.

Para dar de alta su administrador de recursos como participante en una transacción, llame al método EnlistVolatile o al método EnlistDurable de la clase Transaction.To enlist your resource manager as a participant in a transaction, call the EnlistVolatile method or the EnlistDurable method of the Transaction class. En concreto, el parámetro EnlistmentOptions debe ser igual a None para asegurarse de que se realiza una confirmación de fase única.Specifically, the EnlistmentOptions parameter should equal to None to ensure that a single phase commit is performed. Si se establece en EnlistDuringPrepareRequiredde forma errónea, no se produce una confirmación de fase única.If it is mistakenly set to EnlistDuringPrepareRequired, no single phase commit occurs.

Dado que la interfaz de ISinglePhaseNotification deriva de la interfaz de IEnlistmentNotification, el administrador de recursos también debe implementar todos los métodos de la última para las notificaciones de confirmación en dos 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. Es la opción del administrador de transacciones si se usa la confirmación de dos fases o la optimización de confirmación de fase única con este administrador 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. Sin embargo, la implementación de esta interfaz proporciona al administrador de recursos la oportunidad de aprovechar la optimización cuando está disponible.However, implementing this interface gives the resource manager the opportunity to take advantage of the optimization when it is available.

Si se utiliza la optimización y el administrador de transacciones llama al método SinglePhaseCommit del recurso dado de alta, el administrador de recursos debe responder a esta llamada mediante el uso de varios métodos de la clase SinglePhaseEnlistment para informar al administrador de transacciones si la transacción se va a confirmar o revertir.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 a un objeto inscrito que se confirma una transacción.Notifies an enlisted object that a transaction is being committed.

(Heredado de IEnlistmentNotification)
InDoubt(Enlistment)

Notifica a un objeto inscrito que el estado de una transacción está en duda.Notifies an enlisted object that the status of a transaction is in doubt.

(Heredado de IEnlistmentNotification)
Prepare(PreparingEnlistment)

Notifica a un objeto inscrito que se prepara una transacción para la confirmación.Notifies an enlisted object that a transaction is being prepared for commitment.

(Heredado de IEnlistmentNotification)
Rollback(Enlistment)

Notifica a un objeto inscrito que se deshace (se anula) una transacción.Notifies an enlisted object that a transaction is being rolled back (aborted).

(Heredado de IEnlistmentNotification)
SinglePhaseCommit(SinglePhaseEnlistment)

Representa la implementación del administrador de recursos de la devolución de llamada para la optimización de confirmación en una fase.Represents the resource manager's implementation of the callback for the single phase commit optimization.

Se aplica a

Consulte también: