Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définit l’objet d’attente, en remplaçant l’objet d’attente précédent, le cas échéant. Un thread de travail appelle la fonction de rappel de l’objet d’attente une fois le handle signalé ou après l’expiration du délai d’expiration spécifié.
Syntaxe
BOOL SetThreadpoolWaitEx(
[in, out] PTP_WAIT pwa,
[in, optional] HANDLE h,
[in, optional] PFILETIME pftTimeout,
PVOID Reserved
);
Paramètres
[in, out] pwa
Pointeur vers une structure TP_WAIT qui définit l’objet d’attente. La fonction CreateThreadpoolWait retourne ce pointeur.
[in, optional] h
Un handle.
Si ce paramètre est NULL, l’objet d’attente cesse de mettre en file d’attente de nouveaux rappels (mais les rappels déjà mis en file d’attente se produisent toujours).
Si ce paramètre n’est pas NULL, il doit faire référence à un objet pouvant être attendu valide.
Si ce handle est fermé pendant que l’attente est toujours en attente, le comportement de la fonction n’est pas défini. Si l’attente est toujours en attente et que le handle doit être fermé, utilisez CloseThreadpoolWait pour annuler l’attente, puis fermez le handle.
L’attente est considérée comme définie si ce paramètre n’est pas NULL.
[in, optional] pftTimeout
Pointeur vers une structure FILETIME qui spécifie le temps absolu ou relatif auquel l’opération d’attente doit expirer. Si ce paramètre pointe vers une valeur positive, il indique l’heure absolue depuis le 1er janvier 1601 (UTC), dans les intervalles de 100 nanosecondes. Si ce paramètre pointe vers une valeur négative, il indique la durée d’attente relative à l’heure actuelle. Si ce paramètre pointe vers zéro, l’attente expire immédiatement. Pour plus d’informations sur les valeurs de temps, consultez File Times.
Si ce paramètre a la valeur NULL, l’attente n’expire pas.
Reserved
Réservé. Doit être NULL.
Valeur retournée
Retourne TRUE si l’attente a été précédemment définie et a été annulée. Sinon, retourne FALSE.
Si l’état précédent de l’attente a été défini et que la fonction retourne FALSE, un rappel est en cours ou sur le point de commencer. Pour plus d’informations, consultez les remarques.
Remarques
Un objet d’attente ne peut attendre qu’un seul handle. La définition du handle d’un objet d’attente remplace le handle d’attente précédent, le cas échéant.
Dans certains cas, les fonctions de rappel peuvent s’exécuter une fois qu’une application ferme le minuteur du pool de threads. Pour éviter ce comportement, une application doit suivre les étapes décrites dans CloseThreadpoolWait.
Si le délai d’attente spécifié par pftTimeout est relatif, le temps passé par le système en veille ou en veille prolongée ne compte pas vers l’expiration de l’attente. L’attente est signalée lorsque la quantité cumulée de temps écoulé passé par le système dans l’état de réveil est égale au délai d’attente relatif de l’attente. Si le délai d’attente spécifié par pftTimeout est absolu, le temps passé par le système en veille ou en veille prolongée compte vers l’expiration de l’attente. Si l’attente expire pendant que le système est en veille, l’attente est signalée immédiatement lorsque le système se réveille.
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows 8 [applications de bureau | Applications UWP] |
| Serveur minimal pris en charge | Windows Server 2012 [applications de bureau | Applications UWP] |
| plateforme cible | Fenêtres |
| Header | threadpoolapiset.h |
| Library | Kernel32.lib |
| DLL | Kernel32.dll |