ISinglePhaseNotification 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
描述支持单阶段提交优化以参与事务的资源对象。
public interface class ISinglePhaseNotification : System::Transactions::IEnlistmentNotification
public interface ISinglePhaseNotification : System.Transactions.IEnlistmentNotification
type ISinglePhaseNotification = interface
interface IEnlistmentNotification
Public Interface ISinglePhaseNotification
Implements IEnlistmentNotification
- 实现
注解
应注意,即使资源管理器实现此接口以支持单阶段提交优化,也不保证它收到单阶段提交。 事务管理器仍可以改为发送两个阶段提交通知。
若要将资源管理器登记为事务中的参与者,请调用 EnlistVolatile 该类的方法或 EnlistDurable 方法 Transaction 。 具体而言,参数 EnlistmentOptions 应等于 None 确保执行单个阶段提交。 如果错误地设置为 EnlistDuringPrepareRequired,则不会发生单阶段提交。
ISinglePhaseNotification由于该接口派生自IEnlistmentNotification接口,资源管理器还必须实现后者的所有方法,以便两个阶段提交通知。 事务管理器选择是两个阶段提交还是单阶段提交优化用于此资源管理器。 但是,实现此接口使资源管理器有机会在可用时利用优化。
如果使用优化,事务管理器调用 SinglePhaseCommit 已登记资源的方法,则资源管理器应使用类的各种方法 SinglePhaseEnlistment 响应此调用,以通知事务管理器(如果事务要提交或回滚)。
方法
| 名称 | 说明 |
|---|---|
| Commit(Enlistment) |
通知登记的对象正在提交事务。 (继承自 IEnlistmentNotification) |
| InDoubt(Enlistment) |
通知登记的对象事务的状态有疑问。 (继承自 IEnlistmentNotification) |
| Prepare(PreparingEnlistment) |
通知登记的对象正在为承诺准备事务。 (继承自 IEnlistmentNotification) |
| Rollback(Enlistment) |
通知登记的对象正在回滚事务(中止)。 (继承自 IEnlistmentNotification) |
| SinglePhaseCommit(SinglePhaseEnlistment) |
表示单个阶段提交优化回调的资源管理器实现。 |