Функция 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 |