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


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

Запрашивает, является ли указанный поток потоком планировщика UMS, рабочим потоком UMS или потоком без UMS.

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

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

Синтаксис

BOOL GetUmsSystemThreadInformation(
  [in]      HANDLE                         ThreadHandle,
  [in, out] PUMS_SYSTEM_THREAD_INFORMATION SystemThreadInfo
);

Параметры

[in] ThreadHandle

Дескриптор потока. Дескриптор потока должен иметь право доступа THREAD_QUERY_INFORMATION. Дополнительные сведения см. в разделе Безопасность потоков и права доступа.

[in, out] SystemThreadInfo

Указатель на структуру UMS_SYSTEM_THREAD_INFORMATION , получающую сведения о указанном потоке.

Вызывающий объект должен инициализировать элемент перед вызовом UmsVersion .

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

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

Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

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

Требования

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