Функция CreateThreadpoolWork (threadpoolapiset.h)

Создает новый рабочий объект.

Синтаксис

PTP_WORK CreateThreadpoolWork(
  [in]                PTP_WORK_CALLBACK    pfnwk,
  [in, out, optional] PVOID                pv,
  [in, optional]      PTP_CALLBACK_ENVIRON pcbe
);

Параметры

[in] pfnwk

Функция обратного вызова. Рабочий поток вызывает этот обратный вызов каждый раз, когда вы вызываете SubmitThreadpoolWork для публикации рабочего объекта. Дополнительные сведения см. в разделе WorkCallback.

[in, out, optional] pv

Необязательные данные, определяемые приложением, для передачи в функцию обратного вызова.

[in, optional] pcbe

Указатель на структуру TP_CALLBACK_ENVIRON , которая определяет среду, в которой выполняется обратный вызов. Используйте функцию InitializeThreadpoolEnvironment для инициализации структуры перед вызовом этой функции.

Если этот параметр имеет значение NULL, обратный вызов выполняется в среде обратного вызова по умолчанию. Дополнительные сведения см. в разделе InitializeThreadpoolEnvironment.

Возвращаемое значение

Если функция завершается успешно, она возвращает указатель на структуру TP_WORK , которая определяет рабочий объект. Приложения не изменяют члены этой структуры.

Если функция завершается сбоем, она возвращает значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError.

Комментарии

Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0600 или выше.

Примеры

Пример см. в разделе Использование функций пула потоков.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header threadpoolapiset.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

CloseThreadpoolWork

SubmitThreadpoolWork

Пулы потоков

WaitForThreadpoolWorkCallbacks