自带事务 (BYOT)

BYOT 允许使用或继承外部事务创建组件。 也就是说,尚无关联事务的组件可以获取事务。 目前,MTS 事务可自动执行;组件实例是否驻留在事务中在创建时确定。 组件的事务属性及其创建者确定与给定实例关联的事务。 在所有情况下,MTS 都会控制事务生存期。 COM+ 扩展此项以允许将任意预先存在的 DTC 或 TIP 事务设置为新组件的上下文的事务属性。 这允许配置的组件与其生存期由 TP 监视器、OTS 或 DBMS 控制的事务相关联。

注意

必须谨慎使用 BYOT 事务。 在某些情况下,它们可能会导致跨越多个同步域的事务,也就是说,它们允许与事务并行,从而导致死锁情况。 自动事务(而不是 BYOT 事务)是业务组件的编写器的首选编程模型。

 

BYOT 事务的接口包括 ICreateWithTransactionExICreateWithTipTransactionEx 接口。 ICreateWithTransactionEx 接口创建在手动事务中登记的对象。 ICreateWithTipTransactionEx 接口创建使用事务 Internet 协议 (TIP) 在手动事务中登记的对象。

继承手动事务