Share via


CreateThreadpoolIo, fonction (threadpoolapiset.h)

Crée un objet de saisie semi-automatique d’E/S.

Syntaxe

PTP_IO CreateThreadpoolIo(
  [in]                HANDLE                fl,
  [in]                PTP_WIN32_IO_CALLBACK pfnio,
  [in, out, optional] PVOID                 pv,
  [in, optional]      PTP_CALLBACK_ENVIRON  pcbe
);

Paramètres

[in] fl

Handle de fichier à lier à cet objet de saisie semi-automatique d’E/S.

[in] pfnio

Fonction de rappel à appeler chaque fois qu’une opération d’E/S se chevauche sur le fichier. Pour plus d’informations, consultez IoCompletionCallback.

[in, out, optional] pv

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

[in, optional] pcbe

Pointeur vers une structure de TP_CALLBACK_ENVIRON qui définit l’environnement dans lequel exécuter le rappel. Utilisez la fonction InitializeThreadpoolEnvironment pour initialiser la structure avant d’appeler cette fonction.

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_IO qui définit l’objet E/S. 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 commencer à recevoir des rappels de fin d’E/S qui se chevauchent, appelez la fonction StartThreadpoolIo .

Si le handle de fichier lié à l’objet de saisie semi-automatique d’E/S a le mode de notification FILE_SKIP_COMPLETION_PORT_ON_SUCCESS et qu’une opération d’E/S asychrone retourne immédiatement avec succès, la fonction de rappel d’achèvement d’E/S n’est pas appelée et les notifications d’E/S de threadpool doivent être annulées. Pour plus d’informations, consultez CancelThreadpoolIo.

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

Configuration requise

Condition requise Valeur
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

CancelThreadpoolIo

CloseThreadpoolIo

StartThreadpoolIo

Pools de threads

WaitForThreadpoolIoCallbacks