一致和完成标志
COM+ 始终在激活事务对象之前创建上下文对象。 上下文对象保存对象相关信息,例如其创建者和事务标识符。 每个上下文对象还包含一个 一致的标志 和 完成的标志。 这些标志共同确定事务对象的状态。
一致的标志指示事务对象是一致的或不一致的。 使对象的状态一致性的具体细节由程序员决定。 当方法调用将此标志设置为 True 时,该对象是一致的。 False 指示对象不一致。 COM+ 在创建对象实例时将标志设置为 True。 一致的对象已准备好继续处理事务。 虽然对象保持活动状态,但后续方法调用可以重复将一致的标志从 True 切换到 False,反之亦然。
完成的标志确定事务的持续时间。 当方法调用返回时,COM+ 会检查完成的标志。 如果方法将此标志设置为 True,COM+ 将停用对象并记下一致的标志。 当完成的标志为 False 时,COM+ 既不会停用对象,也不会记下一致的标志。 COM+ 在创建对象实例时将完成的标志设置为 False。
一致的标志会强制投票以提交或中止其执行事务,并且完成的标志将完成投票。 当方法调用返回或对象停用时,COM+ 检查完成的标志设置为 True 时一致的标志。 尽管对象的一致性标志可以在每个方法调用中重复更改,但只有最后一个更改计数。
相关主题