Freigeben über


CoEnableCallCancellation-Funktion (combaseapi.h)

Aktiviert die Abbruch synchroner Aufrufe im aufrufenden Thread.

Syntax

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

Die Parameter

[in, optional] pReserved

Dieser Parameter ist reserviert und muss NULL sein.

Rückgabewert

Diese Funktion kann die Standardrücklaufwerte S_OK, E_FAIL, E_INVALIDARG und E_OUTOFMEMORY zurückgeben.

Bemerkungen

Wenn die Anrufunterdrückung in einem Thread aktiviert ist, können synchrone Synchronaufrufe von diesem Thread zu Objekten auf demselben Computer schwerwiegende Leistungseinbußen erleiden. Standardmäßig können synchrone Aufrufe nicht abgebrochen werden, auch wenn ein Cancel-Objekt verfügbar ist. Um die Anrufunterdrückung zu aktivieren, müssen Sie "CoEnableCallCancellation" zuerst aufrufen.

Wenn Sie die Anrufunterdrückung nicht immer in einem Thread aktivieren möchten, sollten Sie Anrufe mit CoEnableCallCancellation mit Aufrufen von CoDisableCallCancellation koppeln. Die Anrufunterdrückung ist nur deaktiviert, wenn CoDisableCallCancellation bei jedem erfolgreichen Aufruf von CoEnableCallCancellation einmal aufgerufen wurde.

Ein Aufruf kann abgebrochen werden oder nicht, abhängig vom Status des Threads zum Zeitpunkt der Anruferhaltung. Die anschließende Aktivierung oder Deaktivierung des Anrufabbruchs hat keine Auswirkungen auf Aufrufe, die im Thread ausstehen.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 2000 Professional [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Windows 2000 Server [nur Desktop-Apps]
Zielplattform Fenster
Header combaseapi.h (include Objbase.h)
Library Ole32.lib
DLL Ole32.dll

Siehe auch

CoEnableCallCancellation

ICancelMethodCalls