Функция DeleteUmsThreadContext (winbase.h)
Удаляет указанный контекст потока планирования пользовательского режима (UMS). Поток должен быть завершен.
Предупреждение
С Windows 11 года планирование в пользовательском режиме не поддерживается. Все вызовы завершаются ошибкой ERROR_NOT_SUPPORTED
.
Синтаксис
BOOL DeleteUmsThreadContext(
[in] PUMS_CONTEXT UmsThread
);
Параметры
[in] UmsThread
Указатель на контекст удаляемого потока UMS. Функция CreateUmsThreadContext предоставляет этот указатель.
Возвращаемое значение
Если функция выполняется успешно, она возвращает ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Контекст потока UMS нельзя удалить, пока связанный поток не завершится.
Когда рабочий поток UMS завершает выполнение (например, возвращая из своей функции точки входа потока), система завершает поток, устанавливает состояние завершения в контексте потока UMS и помещает контекст потока UMS в очередь в соответствующий список завершения.
Любая попытка выполнить поток UMS завершится ошибкой, так как поток уже завершен.
Чтобы проверка состояние завершения потока, планировщик приложения должен вызвать QueryUmsThreadInformation с классом информации UmsIsThreadTerminated.
Требования
Минимальная версия клиента | 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) |