正在加载图片...
Mad0N,.547 STDMETHODIMP CTablestorage2:: Clear() m rows. clear() m_columnIndexMap clear()i mspobjectcontext->Setcomplete()i return s_ OKi 这个方法的目的是删除组件中的所有数据。必须检查 ObjectContexti的引用是否确实存在 如果在COM+以外使用组件,这个指针的值不存在,进行引用会引起组件崩溃。在这个例子 中,调用 SetComplete方法告诉COM+“不再保持状态,可以释放。” 1822 lObjectcontrol的对象缓冲 lObjectControl接口用于对象缓冲,可增强应用程序的性能。当超出对象的使用范围时 被缓冲的对象不会真的破坏,只是处于无效状态。当请求这种类型的对象时,可以重新使用 这个对象,组件被循环使用。性能增强的原因是当一个对象无效时,对象没有完全损坏,因 此就不需执行很多工作。同样,激活一个无效对象也不需执行很多工作 在创建MTS/COM+对象时,对象缓冲可通过 AtL Object Wizard Properties对话框启用, 如图18-9所示 图18-9启用对象缓冲 主意 Can be pooled选项只能在选定 Support lObjectcontro后才能选定。另一种方式是将 e Pooled方法中的返回值改为TURE BOOL cTablestora CanBePooled( return TRUE 使用对象缓冲所需做的工作仅此而已。 上面讲述了组件如何与ASP和COM+相互作用,下面我们讲述组件如何访问永久性数据。 183数据访问 服务器组件一般用于实现三层应用程序的业务规则,因此需要与数据库交互。C++访问数这个方法的目的是删除组件中的所有数据。必须检查 O b j e c t C o n t e x t的引用是否确实存在。 如果在C O M +以外使用组件,这个指针的值不存在,进行引用会引起组件崩溃。在这个例子 中,调用S e t C o m p l e t e方法告诉C O M +“不再保持状态,可以释放。” 18.2.2 IObjectControl的对象缓冲 I O b j e c t C o n t r o l接口用于对象缓冲,可增强应用程序的性能。当超出对象的使用范围时, 被缓冲的对象不会真的破坏,只是处于无效状态。当请求这种类型的对象时,可以重新使用 这个对象,组件被循环使用。性能增强的原因是当一个对象无效时,对象没有完全损坏,因 此就不需执行很多工作。同样,激活一个无效对象也不需执行很多工作。 在创建M T S / C O M +对象时,对象缓冲可通过 ATL Object Wizard Properties对话框启用, 如图1 8 - 9所示。 图18-9 启用对象缓冲 注意Can be pooled选项只能在选定 Support IObjectControl后才能选定。另一种方式是将 C a n B e P o o l e d方法中的返回值改为T U R E: 使用对象缓冲所需做的工作仅此而已。 上面讲述了组件如何与A S P和C O M +相互作用,下面我们讲述组件如何访问永久性数据。 18.3 数据访问 服务器组件一般用于实现三层应用程序的业务规则,因此需要与数据库交互。 C + +访问数 第1 8章 对C + +组件的进一步讨论计计547 下载
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有