Partager via


Indicateurs cohérents et terminés

COM+ crée toujours un objet de contexte avant d’activer un objet transactionnel. L’objet de contexte contient des informations relatives à l’objet, telles que son créateur et son identificateur de transaction. Chaque objet de contexte contient également un indicateur cohérent et un indicateur terminé. Ensemble, ces indicateurs déterminent le status de l’objet transactionnel.

L’indicateur de cohérence indique que l’objet transactionnel est cohérent ou incohérent. Les détails spécifiques de ce qui rend l’état cohérent d’un objet incombent au programmeur. Lorsqu’un appel de méthode définit cet indicateur sur True, l’objet est cohérent. False indique que l’objet est incohérent. COM+ définit l’indicateur sur True lorsqu’il crée un objet instance. Un objet cohérent est prêt à poursuivre la transaction. Pendant qu’un objet reste actif, les appels de méthode suivants peuvent basculer à plusieurs reprises l’indicateur cohérent de True vers False et vice versa.

L’indicateur terminé détermine la durée d’une transaction. Lorsqu’un appel de méthode est retourné, COM+ inspecte l’indicateur terminé. Si la méthode définit cet indicateur sur True, COM+ désactive l’objet et note l’indicateur cohérent. Lorsque l’indicateur terminé est False, COM+ ne désactive pas l’objet et ne note pas l’indicateur cohérent. COM+ définit l’indicateur terminé sur False lorsqu’il crée un objet instance.

L’indicateur cohérent vote pour valider ou abandonner la transaction dans laquelle il s’exécute, et l’indicateur terminé finalise le vote. COM+ inspecte l’indicateur cohérent lorsque l’indicateur terminé est défini sur True sur un retour d’appel de méthode ou lorsque l’objet se désactive. Bien que l’indicateur cohérent d’un objet puisse changer à plusieurs reprises dans chaque appel de méthode, seule la dernière modification compte.

Gestion des transactions automatiques dans COM+

Définition des indicateurs cohérents et terminés