CreateThreadpoolIo-Funktion (threadpoolapiset.h)
Erstellt ein neues E/A-Vervollständigungsobjekt.
Syntax
PTP_IO CreateThreadpoolIo(
[in] HANDLE fl,
[in] PTP_WIN32_IO_CALLBACK pfnio,
[in, out, optional] PVOID pv,
[in, optional] PTP_CALLBACK_ENVIRON pcbe
);
Parameter
[in] fl
Das Dateihandle, das an dieses E/A-Vervollständigungsobjekt gebunden werden soll.
[in] pfnio
Die Rückruffunktion, die jedes Mal aufgerufen werden soll, wenn ein überlappender E/A-Vorgang für die Datei abgeschlossen wird. Ausführliche Informationen finden Sie unter IoCompletionCallback.
[in, out, optional] pv
Optionale anwendungsdefinierte Daten, die an die Rückruffunktion übergeben werden sollen.
[in, optional] pcbe
Ein Zeiger auf eine TP_CALLBACK_ENVIRON Struktur, die die Umgebung definiert, in der der Rückruf ausgeführt werden soll. Verwenden Sie die InitializeThreadpoolEnvironment-Funktion , um die Struktur zu initialisieren, bevor Sie diese Funktion aufrufen.
Wenn dieser Parameter NULL ist, wird der Rückruf in der Standardrückrufumgebung ausgeführt. Weitere Informationen finden Sie unter InitializeThreadpoolEnvironment.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie einen Zeiger auf eine TP_IO Struktur zurück, die das E/A-Objekt definiert. Anwendungen ändern die Member dieser Struktur nicht.
Wenn bei der Funktion ein Fehler auftritt, gibt sie NULL zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.
Hinweise
Um überlappende E/A-Vervollständigungsrückrufe zu erhalten, rufen Sie die Funktion StartThreadpoolIo auf.
Wenn das an das E/A-Vervollständigungsobjekt gebundene Dateihandle den Benachrichtigungsmodus FILE_SKIP_COMPLETION_PORT_ON_SUCCESS hat und ein asychroner E/A-Vorgang sofort erfolgreich zurückgegeben wird, wird die Rückruffunktion für die E/A-Vervollständigung nicht aufgerufen, und threadpool-E/A-Benachrichtigungen müssen abgebrochen werden. Weitere Informationen finden Sie unter CancelThreadpoolIo.
Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0600 oder höher.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | threadpoolapiset.h (einschließen von Windows.h unter Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Bibliothek | Kernel32.lib |
DLL | Kernel32.dll |