Compartir a través de


Aplicación de la activación en el contexto predeterminado

Un componente COM configurado normalmente se activa en su propio contexto; es decir, COM+ hace referencia a la información del catálogo del componente para proporcionar los servicios configurados. Sin embargo, puede elegir activar un componente configurado en el contexto predeterminado. Un componente COM base (un componente registrado que no tiene información de catálogo COM+) normalmente se activa en el contexto predeterminado.

La activación de un componente COM en el contexto predeterminado proporciona tres ventajas de rendimiento principales, como se indica a continuación:

  • Los recursos del sistema se guardan limitando el número de contextos creados.
  • Aumenta el rendimiento limitando el número de llamadas entre contextos. Dado que las llamadas entre contextos requieren serialización, es mucho más rápida para un objeto COM activado en el contexto predeterminado para realizar llamadas a otros objetos en el contexto predeterminado. El rendimiento en este caso (de llamadas dentro del mismo contexto) es similar al de llamar a una subrutina.
  • Puede importar aplicaciones COM anteriores en COM+ y ejecutarlas sin ningún problema. Por ejemplo, puede tener varias aplicaciones COM anteriores implementadas bajo la suposición de que era posible pasar referencias de objeto dentro de un apartamento sin serializar las referencias. Estas aplicaciones COM no funcionan cuando se importan en COM+ porque las referencias de objeto se pasan a través de límites de contexto. Sin embargo, puede hacer que este tipo de aplicación COM se ejecute cuando se importa si usa la herramienta administrativa Servicios de componentes para marcar todas las clases de la aplicación como Debe activarse en el contexto predeterminado.

La principal desventaja de activar un componente configurado en el contexto predeterminado es que COM+ no proporciona ninguno de los servicios configurados del componente. Existe un equilibrio entre el rendimiento mejorado y la capacidad de usar servicios COM+.

Por ejemplo, supongamos que un componente COM no requiere ningún servicio COM+ (como transacciones, activación Just-in-Time, eventos, componentes en cola, sincronización o agrupación de objetos) y que el componente realiza una serie de llamadas a otros componentes COM que se pueden activar en el contexto predeterminado. En este caso, sería una buena idea activar el componente de llamada en el contexto predeterminado.

Si el componente COM requiere servicios COM+, no se puede marcar como Debe activarse en el contexto predeterminado. Además, no hay ninguna ganancia de rendimiento real si un objeto COM activado en el contexto predeterminado realiza una serie de llamadas a objetos en otros contextos. (Para obtener más información, vea Contextos).

Para aplicar la activación en el contexto predeterminado

  1. En el panel de detalles de la herramienta administrativa Servicios de componentes, haga clic con el botón derecho en el componente (ubicado en la carpeta Componentes de cualquier aplicación COM+ seleccionada) que desee activar en el contexto predeterminado y, a continuación, haga clic en Propiedades.

  2. En el cuadro de diálogo propiedades del componente, haga clic en la pestaña Activación .

  3. Active la casilla Debe activarse en el contexto predeterminado.

  4. Haga clic en OK.

Nota

Al ejecutar un componente configurado en el contexto predeterminado, COM+ no activa ninguno de los servicios configurados para ese componente. Estos servicios están disponibles de nuevo al desactivar la casilla Debe activarse en el contexto predeterminadoy, posteriormente, ejecutar el componente configurado en su propio contexto.

 

Conceptos de activación Just-In-Time de COM+

Aplicación de la activación en el contexto del autor de la llamada