Поделиться через


Функция SetUmsThreadInformation (winbase.h)

Задает сведения о контексте конкретного приложения для указанного рабочего потока планирования пользовательского режима (UMS).

Предупреждение

С Windows 11 года планирование в пользовательском режиме не поддерживается. Все вызовы завершаются ошибкой ERROR_NOT_SUPPORTED.

Синтаксис

BOOL SetUmsThreadInformation(
  [in] PUMS_CONTEXT          UmsThread,
  [in] UMS_THREAD_INFO_CLASS UmsThreadInfoClass,
  [in] PVOID                 UmsThreadInformation,
  [in] ULONG                 UmsThreadInformationLength
);

Параметры

[in] UmsThread

Указатель на контекст потока UMS.

[in] UmsThreadInfoClass

Значение UMS_THREAD_INFO_CLASS , указывающее тип устанавливаемых сведений. Этот параметр должен иметь значение UmsThreadUserContext.

[in] UmsThreadInformation

Указатель на буфер, содержащий устанавливаемые сведения.

[in] UmsThreadInformationLength

Размер буфера UmsThreadInformation в байтах.

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

Если функция выполняется успешно, она возвращает ненулевое значение.

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

Код возврата Описание
ERROR_INFO_LENGTH_MISMATCH
Размер буфера не соответствует требуемому размеру для указанного класса информации.
ERROR_INVALID_INFO_CLASS
Параметр UmsThreadInfoClass указывает класс сведений, который не поддерживается.
ERROR_NOT_SUPPORTED
UMS не поддерживается.

Комментарии

Функцию SetUmsThreadInformation можно использовать для задания контекста, определяемого приложением, для указанного рабочего потока UMS. Сведения о контексте могут состоять из всего, что приложение может оказаться полезным для отслеживания, например для планировщика или рабочего потока. Базовые структуры для рабочих потоков UMS управляются системой и не должны изменяться напрямую.

Функцию QueryUmsThreadInformation можно использовать для получения других доступных сведений об указанном потоке, таких как блок выполнения потока (TEB) и состояние приостановки или завершения потока. Сведения, которые не предоставляются через QueryUmsThreadInformation , следует считать зарезервированными.

Требования

   
Минимальная версия клиента Windows 7 (только 64-разрядная версия) [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header winbase.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll
Набор API api-ms-win-core-ums-l1-1-0 (представлено в Windows 7)

См. также раздел

QueryUmsThreadInformation