Compartir a través de


Función CreateThreadpoolIo (threadpoolapiset.h)

Crea un nuevo objeto de finalización de E/S.

Sintaxis

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

Parámetros

[in] fl

Identificador de archivo que se va a enlazar a este objeto de finalización de E/S.

[in] pfnio

La función de devolución de llamada que se va a llamar cada vez que se completa una operación de E/S superpuesta en el archivo. Para más información, consulte IoCompletionCallback.

[in, out, optional] pv

Datos opcionales definidos por la aplicación que se van a pasar a la función de devolución de llamada.

[in, optional] pcbe

Puntero a una estructura TP_CALLBACK_ENVIRON que define el entorno en el que se va a ejecutar la devolución de llamada. Use la función InitializeThreadpoolEnvironment para inicializar la estructura antes de llamar a esta función.

Si este parámetro es NULL, la devolución de llamada se ejecuta en el entorno de devolución de llamada predeterminado. Para obtener más información, vea InitializeThreadpoolEnvironment.

Valor devuelto

Si la función se ejecuta correctamente, devuelve un puntero a una estructura TP_IO que define el objeto de E/S. Las aplicaciones no modifican los miembros de esta estructura.

Si se produce un error en la función, devuelve NULL. Para recuperar información de error extendida, llame a GetLastError.

Comentarios

Para empezar a recibir devoluciones de llamada de finalización de E/S superpuestas, llame a la función StartThreadpoolIo .

Si el identificador de archivo enlazado al objeto de finalización de E/S tiene el modo de notificación FILE_SKIP_COMPLETION_PORT_ON_SUCCESS y una operación asincrónica de E/S devuelve inmediatamente con éxito, no se llama a la función de devolución de llamada de finalización de E/S de E/S y se deben cancelar las notificaciones de E/S de grupo de subprocesos. Para obtener más información, vea CancelThreadpoolIo.

Para compilar una aplicación que use esta función, defina _WIN32_WINNT como 0x0600 o superior.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado threadpoolapiset.h (incluya Windows.h en Windows 7, Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

CancelThreadpoolIo

CloseThreadpoolIo

StartThreadpoolIo

Grupos de subprocesos

WaitForThreadpoolIoCallbacks