Функция SetThreadpoolWait (threadpoolapiset.h)
Задает объект wait, заменяя предыдущий объект ожидания, если таковой есть. Рабочий поток вызывает функцию обратного вызова объекта ожидания после того, как дескриптор получает сигнал или по истечении указанного времени ожидания.
Синтаксис
void SetThreadpoolWait(
[in, out] PTP_WAIT pwa,
[in, optional] HANDLE h,
[in, optional] PFILETIME pftTimeout
);
Параметры
[in, out] pwa
Указатель на структуру TP_WAIT , которая определяет объект ожидания. Функция CreateThreadpoolWait возвращает этот указатель.
[in, optional] h
Дескриптор.
Если этот параметр имеет значение NULL, объект wait перестанет ставить в очередь новые обратные вызовы (но обратные вызовы, уже помещенные в очередь, по-прежнему будут выполняться).
Если этот параметр не равен NULL, он должен ссылаться на допустимый объект, доступный для ожидания.
Если этот дескриптор закрыт, пока ожидание еще не завершено, поведение функции не определено. Если ожидание по-прежнему ожидается и дескриптор должен быть закрыт, используйте closeThreadpoolWait , чтобы отменить ожидание, а затем закрыть дескриптор.
Ожидание считается установленным, если этот параметр имеет значение, отличное от NULL.
[in, optional] pftTimeout
Указатель на структуру FILETIME , задающий абсолютное или относительное время, в течение которого должно истекать время ожидания. Если этот параметр указывает на положительное значение, он указывает абсолютное время с 1 января 1601 г. (UTC) в 100-наносекундных интервалах. Если этот параметр указывает на отрицательное значение, он указывает время ожидания относительно текущего времени. Дополнительные сведения о значениях времени см. в разделе File Times.
Если этот параметр указывает на 0, время ожидания истекает немедленно. Если этот параметр имеет значение NULL, время ожидания не истекает.
Возвращаемое значение
None
Remarks
Объект ожидания может ожидать только один дескриптор. Установка дескриптора для объекта ожидания заменяет предыдущий дескриптор , если таковой имеется.
Чтобы активировать обратный вызов ожидания, необходимо повторно зарегистрировать событие в объекте wait, прежде чем каждый раз сигнализировать о нем.
Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0600 или выше.
Примеры
Пример см. в разделе Использование функций пула потоков.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | threadpoolapiset.h (включает Windows.h в Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по