Partager via


Fonction de rappel PWAITCHAINCALLBACK (wct.h)

Fonction de rappel définie par l’application qui reçoit une chaîne d’attente. Spécifiez cette adresse lors de l’appel de la fonction OpenThreadWaitChainSession .

Le type PWAITCHAINCALLBACK définit un pointeur vers cette fonction de rappel. WaitChainCallback est un espace réservé pour le nom de fonction défini par l’application.

Syntaxe

PWAITCHAINCALLBACK Pwaitchaincallback;

void Pwaitchaincallback(
  HWCT WctHandle,
  DWORD_PTR Context,
  DWORD CallbackStatus,
  LPDWORD NodeCount,
  PWAITCHAIN_NODE_INFO NodeInfoArray,
  LPBOOL IsCycle
)
{...}

Paramètres

WctHandle

Handle de la session WCT créée par la fonction OpenThreadWaitChainSession .

Context

Pointeur facultatif vers une structure de contexte définie par l’application spécifiée par la fonction GetThreadWaitChain .

CallbackStatus

Status de rappel. Ce paramètre peut être l’une des valeurs suivantes ou l’un des autres codes d’erreur système.

Valeur Signification
ERROR_ACCESS_DENIED
L’appelant ne disposait pas des privilèges suffisants pour ouvrir un thread cible.
ERROR_CANCELLED
La session asynchrone a été annulée par un appel à la fonction CloseThreadWaitChainSession .
ERROR_MORE_DATA
La mémoire tampon NodeInfoArray n’est pas assez grande pour contenir tous les nœuds de la chaîne d’attente. Le paramètre NodeCount contient le nombre de nœuds dans la chaîne. La chaîne d’attente retournée est toujours valide.
ERROR_OBJECT_NOT_FOUND
Impossible de localiser le thread spécifié.
ERROR_SUCCESS
L’opération s’est terminée avec succès.
ERROR_TOO_MANY_THREADS
Le nombre de nœuds dépasse WCT_MAX_NODE_COUNT. La chaîne d’attente retournée est toujours valide.

NodeCount

Nombre de nœuds récupérés, jusqu’à WCT_MAX_NODE_COUNT. Si le tableau ne peut pas contenir tous les nœuds de la chaîne d’attente, la fonction échoue, CallbackStatus est ERROR_MORE_DATA et ce paramètre reçoit le nombre d’éléments de tableau requis pour contenir tous les nœuds.

NodeInfoArray

Tableau de structures WAITCHAIN_NODE_INFO qui reçoit la chaîne d’attente.

IsCycle

Si la fonction détecte un interblocage, cette variable est définie sur TRUE ; sinon, elle est définie sur FALSE.

Valeur de retour

None

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wct.h

Voir aussi

GetThreadWaitChain

OpenThreadWaitChainSession

WAITCHAIN_NODE_INFO