Поделиться через


Функция CoEnableCallCancellation (combaseapi.h)

Включает отмену синхронных вызовов в вызывающем потоке.

Синтаксис

HRESULT CoEnableCallCancellation(
  [in, optional] LPVOID pReserved
);

Параметры

[in, optional] pReserved

Этот параметр зарезервирован и должен иметь значение NULL.

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

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

Комментарии

Если в потоке включена отмена вызовов, маршалированные синхронные вызовы из этого потока к объектам на том же компьютере могут серьезно снизить производительность. По умолчанию синхронные вызовы не могут быть отменены, даже если объект отмены доступен. Чтобы включить отмену вызова, сначала необходимо вызвать CoEnableCallCancellation .

Если вы не хотите постоянно включать отмену вызовов в потоке, следует связать вызовы CoEnableCallCancellation с вызовами CoDisableCallCancellation. Отмена вызова отключена, только если coDisableCallCancellation вызывался один раз для каждого успешного вызова CoEnableCallCancellation .

Вызов будет отменен или не в зависимости от состояния потока на момент выполнения вызова. Впоследствии включение или отключение отмены вызова не влияет на вызовы, ожидающие в потоке.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header combaseapi.h (включая Objbase.h)
Библиотека Ole32.lib
DLL Ole32.dll

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

CoEnableCallCancellation

ICancelMethodCalls