IServiceCall::OnCall 方法 (comsvcs.h)

触发在此方法中实现的批处理工作的执行。

语法

HRESULT OnCall();

返回值

此方法可以返回E_INVALIDARG、E_OUTOFMEMORY、E_FAIL和S_OK的标准返回值。

备注

在此方法中运行的批处理工作在通过调用 CoCreateActivity 创建的活动的上下文和线程单元中运行。 此方法中的批处理工作通过对 SynchronousCallAsynchronousCall 的调用运行,使用从调用 CoCreateActivity 返回的 IServiceActivity 指针。

如果 CoCreateActivity 创建的活动对象不是使用同步上下文创建的,则必须确保此方法是线程安全的,因为在这种情况下,许多对 OnCall 的调用可以同时运行。

若要从系统获得最佳性能, CoCreateActivity 创建的活动的上下文配置应与 OnCall 方法执行的批处理工作相匹配。 例如,如果 OnCall 方法中的批处理工作使用可共用对象,则应将 CoCreateActivity 创建的活动配置为使用多线程单元 (MTA) 。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 comsvcs.h

另请参阅

IServiceCall