实时激活

利用 COM+ 实时 (JIT) 激活服务,可以更有效地使用空闲服务器资源。将组件配置为 JIT 激活后,COM+ 可在客户端仍保持对象的当前引用时停用该组件的实例。客户端下次在该对象调用方法时,COM+ 将实时地以对客户端透明的方式重新激活该对象。**

Note注意:

对于配置为 JIT 激活的组件,将在首次创建对象时激活对象。

在方法调用返回时,COM+ 将停用该对象,但将上下文留在内存中。被停用的对象会释放所有资源,包括对昂贵的数据存储的锁定。

Note注意:

从性能角度看,最好不要在 ServicedComponent 派生类中实现终结器,而应将该逻辑放在 DisposeObject 方法中。尽管 System.EnterpriseServices.ServicedComponent 代理具有终结器,但它仍通过使用反射来调用 System.EnterpriseServices.ServicedComponent 派生类上的终结器。

要启用 JIT 激活,请将 JustInTimeActivationAttribute 属性应用于从 System.EnterpriseServices.ServicedComponent 派生的类。另外,为确保在方法调用返回时停用对象,有必要设置对象完成位。对于事务性组件,可将 AutoCompleteAttribute 应用于类或者调用 ContextUtil.SetComplete 或 ContextUtil.SetAbort。对于非事务性组件,可调用 ContextUtil.DeactivateOnReturn。

Note注意:

自动事务要求 JIT 激活;因此,为自动事务配置类时将隐式启用 JIT 激活。

有关如何启用 JIT 激活的示例,请参阅如何:启用 JIT 激活

请参见

任务

如何:启用 JIT 激活

参考

JustInTimeActivationAttribute
System.EnterpriseServices Namespace

概念

可用的 COM+ 服务摘要

Footer image

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。