Метод IServiceCall::OnCall (comsvcs.h)

Запускает выполнение пакетной работы, реализованной в этом методе.

Синтаксис

HRESULT OnCall();

Возвращаемое значение

Этот метод может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY, E_FAIL и S_OK.

Комментарии

Пакетная работа, выполняемая в этом методе, выполняется в контексте и объекте потока действия, созданного при вызове CoCreateActivity. Пакетная работа в этом методе выполняется через вызов SynchronousCall или AsynchronousCall с помощью указателя IServiceActivity , возвращенного при вызове CoCreateActivity.

Необходимо убедиться, что этот метод является потокобезопасным в ситуациях, когда объект действия , созданный CoCreateActivity , не создается с синхронизированным контекстом, так как в таких ситуациях многие вызовы OnCall могут выполняться одновременно.

Чтобы добиться максимальной производительности в системе, контекстная конфигурация действия, созданного CoCreateActivity , должна соответствовать пакетной работе, выполняемой методом OnCall . Например, если пакетная работа в методе OnCall использует объекты, доступные в пуле, действие, созданное CoCreateActivity , должно быть настроено для использования многопоточного объекта (MTA).

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header comsvcs.h

См. также раздел

IServiceCall