Conceptos del Administrador de propiedades compartidas de COM+

En COM+, el estado transitorio compartido para los objetos se administra mediante el administrador de propiedades compartidas (SPM). SPM es un dispensador de recursos que puede usar para compartir el estado entre varios objetos dentro de un proceso de servidor.

No se pueden usar variables globales en un entorno distribuido debido a problemas de colisión de nombres y simultaneidad. El administrador de propiedades compartidas elimina las colisiones de nombres proporcionando grupos de propiedades compartidas, que establecen espacios de nombres únicos para las propiedades compartidas que contienen. El SPM también implementa bloqueos y semáforos para ayudar a proteger las propiedades compartidas del acceso simultáneo, lo que podría dar lugar a actualizaciones perdidas y dejar propiedades en un estado imprevisible.

Nota

El estado transitorio compartido es la información de estado que se mantiene en la memoria que no sobrevive a los errores del sistema. La información está diseñada para compartirse con varios objetos entre límites de transacción (pero no entre procesos).

 

Las propiedades compartidas almacenadas en SPM solo están disponibles para los objetos que se ejecutan en el mismo proceso. Esto significa que los objetos que usarán el SPM para almacenar valores y que deberán tener acceso a estos valores deben instalarse como parte de la misma aplicación COM+. Es posible que los administradores del sistema muevan clases COM+ de un paquete a otro después de implementar la aplicación COM+. Si confía en varias propiedades de uso compartido de objetos a través de SPM, debe documentar claramente que deben instalarse en la misma aplicación COM+.

También es importante que los componentes que comparten propiedades tengan el mismo atributo de activación. Si dos componentes del mismo paquete tienen atributos de activación diferentes, por lo general no podrán compartir propiedades. Por ejemplo, si un componente está configurado para ejecutarse en un proceso de cliente y el otro está configurado para ejecutarse en un proceso de servidor, sus objetos normalmente se ejecutarán en procesos diferentes aunque estén en el mismo paquete.

Siempre debe crear instancias de los objetos SharedPropertyGroupManager, SharedPropertyGroup y SharedProperty de componentes COM+ en lugar de desde un cliente base. Si un cliente base crea propiedades y grupos de propiedades compartidas, las propiedades compartidas están dentro del proceso de cliente base, no en un proceso de servidor. Esto significa que los objetos COM+ no pueden compartir las propiedades a menos que los objetos también se ejecuten en el proceso de cliente (que generalmente no es una buena idea).

Administrador de propiedades compartidas de COM+

Grupos de propiedades compartidas