Freigeben über


WinCPICIsBlocking

Die WinCPICIsBlocking-Funktion bestimmt, ob eine Aufgabe ausgeführt wird, während sie auf den Abschluss eines vorherigen Blockierungsaufrufs wartet.

Syntax

  
BOOL WINAPI WinCPICIsBlocking(void);  

Rückgabewert

Der Rückgabewert gibt das Ergebnis der Funktion an. Wenn der Wert nicht null ist, gibt es einen ausstehenden Blockierungsaufruf, der auf die Vollendung wartet. Ein Wert von Null gibt an, dass kein ausstehender Blockierungsaufruf vorhanden ist.

Bemerkungen

Dieser Anruf leitet keine Informationen zu einer bestimmten Unterhaltung ab; sie soll nur einer Anwendung helfen, die für die Verwendung des CM_BLOCKING Merkmals von Set_Processing_Mode geschrieben wurde. WinCPICIsBlocking dient demselben Zweck wie InSendMessage in der Microsoft® Windows-API®. Alte Anwendungen, die auf Windows Version 3.x abzielen und mehrere Sitzungen unterstützen, müssen CM_NONBLOCKING in Set_Processing_Mode festlegen, damit sie mehrere ausstehende Vorgänge gleichzeitig ermöglichen können. Anwendungen sind immer noch auf einen ausstehenden Vorgang pro Unterhaltung in allen Umgebungen beschränkt.

Obwohl ein Aufruf in einer Blockierungsfunktion einer Anwendung als blockierend erscheint, muss die Windows CPI-C Dynamic-Link Library (DLL) den Prozessor freigeben, damit andere Anwendungen ausgeführt werden können. Dies bedeutet, dass es möglich ist, dass die Anwendung, die den Blockierungsaufruf ausgegeben hat, je nach empfangenen Nachrichten erneut eingegeben werden kann. In diesem Fall kann WinCPICIsBlocking verwendet werden, um zu bestimmen, ob die Anwendungsaufgabe zurzeit erneut eingegeben wurde, während sie auf den Abschluss eines ausstehenden Blockierungsaufrufs wartet. Beachten Sie, dass Windows CPI-C mehr als einen ausstehenden Blockierungsaufruf pro Thread verbietet.

Siehe auch

Specify_Windows_Handle (CPI-C)
WinCPICSetBlockingHook
WinCPICUnhookBlockingHook