Partager via


CreateThreadpoolWait, fonction (threadpoolapiset.h)

Crée un objet wait.

Syntaxe

PTP_WAIT CreateThreadpoolWait(
  [in]                PTP_WAIT_CALLBACK    pfnwa,
  [in, out, optional] PVOID                pv,
  [in, optional]      PTP_CALLBACK_ENVIRON pcbe
);

Paramètres

[in] pfnwa

Fonction de rappel à appeler lorsque l’attente se termine ou expire. Pour plus d’informations, consultez WaitCallback.

[in, out, optional] pv

Données facultatives définies par l’application à passer à la fonction de rappel.

[in, optional] pcbe

Une structure TP_CALLBACK_ENVIRON qui définit l’environnement dans lequel exécuter le rappel. La fonction InitializeThreadpoolEnvironment retourne cette structure.

Si ce paramètre a la valeur NULL, le rappel s’exécute dans l’environnement de rappel par défaut. Pour plus d’informations, consultez InitializeThreadpoolEnvironment.

Valeur retournée

Si la fonction réussit, elle retourne un pointeur vers une structure TP_WAIT qui définit l’objet wait. Les applications ne modifient pas les membres de cette structure.

Si la fonction échoue, elle retourne NULL. Pour récupérer des informations d’erreur étendues, appelez GetLastError.

Remarques

Pour définir l’objet wait, appelez la fonction SetThreadpoolWait ou SetThreadpoolWaitEx .

L’élément de travail et toutes les fonctions qu’il appelle ne doivent pas s’appuyer sur le thread une fois qu’ils ont été retournés. Par conséquent, vous ne pouvez pas appeler un appel asynchrone qui nécessite un thread persistant, tel que la fonction RegNotifyChangeKeyValue sans l’indicateur REG_NOTIFY_THREAD_AGNOSTIC , à partir de l’environnement de rappel par défaut. Utilisez plutôt un thread dont vous contrôlez la durée de vie.

Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT comme 0x0600 ou une version ultérieure.

Exemples

Pour obtenir un exemple, consultez Utilisation des fonctions de pool de threads.

Configuration requise

   
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête threadpoolapiset.h (inclure Windows.h sur Windows 7, Windows Server 2008 Windows Server 2008 R2)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CloseThreadpoolWait

SetThreadpoolWait

Pools de threads

WaitForThreadpoolWaitCallbacks