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


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

Создает список завершения планирования в пользовательском режиме (UMS).

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

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

Синтаксис

BOOL CreateUmsCompletionList(
  [out] PUMS_COMPLETION_LIST *UmsCompletionList
);

Параметры

[out] UmsCompletionList

Переменная PUMS_COMPLETION_LIST. В выходных данных этот параметр получает указатель на пустой список завершения UMS.

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

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

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

Код возврата Описание
ERROR_NOT_ENOUGH_MEMORY
Недостаточно памяти для создания списка завершения.
ERROR_NOT_SUPPORTED
UMS не поддерживается.

Комментарии

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

При вызове функции точки входа UmsSchedulerProc приложения планировщик приложения должен получить элементы из списка завершения, вызвав DequeueUmsCompletionListItems.

Каждый список завершения имеет связанное событие списка завершения, которое сигнализирует каждый раз, когда система помещает элементы в очередь в пустой список. Используйте GetUmsCompletionListEvent , чтобы получить дескриптор события для указанного списка завершения.

Если список завершения больше не нужен, используйте DeleteUmsCompletionList , чтобы освободить список. Список должен быть пустым, прежде чем его можно будет освободить.

Требования

   
Минимальная версия клиента 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)

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

DequeueUmsCompletionListItems

EnterUmsSchedulingMode

GetUmsCompletionListEvent