Fonction RpcCancelThread (rpcdce.h)
La fonction RpcCancelThread annule un thread. La fonction RpcCancelThread ne doit pas être utilisée pour annuler des appels RPC asynchrones ; à la place, utilisez la fonction RpcAsyncCancelCall pour annuler un appel RPC asynchrone.
Syntaxe
RPC_STATUS RpcCancelThread(
void *Thread
);
Paramètres
Thread
Gérer le thread à annuler.
Valeur retournée
Valeur | Signification |
---|---|
|
L’appel a réussi. |
|
Le handle de thread n’a pas de privilèges. Les handles de thread doivent avoir THREAD_SET_CONTEXT correctement définis pour que la fonction s’exécute correctement. |
|
Appelé par un client MS-DOS ou Windows 3.x. |
Notes
La fonction RpcCancelThread permet à un thread client d’annuler un RPC en cours sur un autre thread client. Lorsque la fonction est appelée, l’exécution du serveur est informée de l’opération d’annulation. Le stub du serveur peut déterminer si l’appel a été annulé en appelant RpcTestCancel. Si l’appel a été annulé, le stub du serveur doit propre et retourner le contrôle au client.
La fonction RpcCancelThread ne peut pas être utilisée pour annuler un appel qui a émis un rappel statique. N’annulez pas les appels de procédure distante susceptibles d’appeler une fonction déclarée avec l’attribut [rappel] dans le fichier IDL.
Par défaut, le client attend toujours que le serveur retourne le contrôle après une annulation. Pour réduire ce temps, appelez RpcMgmtSetCancelTimeout, en spécifiant le nombre de secondes d’attente d’une réponse. Si le serveur ne retourne pas dans cet intervalle, l’appel échoue au niveau du client avec une exception RPC_S_CALL_FAILED . Le stub du serveur continue de s’exécuter.
Si vous utilisez le protocole de canaux nommés, ncacn_np, vous devez spécifier un délai d’attente limité.
Vous pouvez utiliser RpcCancelThread avec n’importe quel protocole orienté connexion (ncacn_*) et avec n’importe quel protocole de datagramme à l’exception de ncadg_mq et ncalrpc.
Note Windows XP/2000 La fonction RpcCancelThread n’est pas disponible pour ncacn_http. La fonction RpcCancelThread prend en charge ncacn_http sur les systèmes d’exploitation Windows Server 2003 ou ultérieurs et Windows XP avec Service Pack 1 (SP1) et versions ultérieures.
Spécifications
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | rpcdce.h (inclure Rpc.h) |
Bibliothèque | Rpcrt4.lib |
DLL | Rpcrt4.dll |