Функция KsRegisterWorker (ks.h)

Функция KsRegisterWorker обрабатывает клиенты, регистрируемые для использования потока. Функция может создать новый поток указанного приоритета, если в настоящее время нет свободных потоков. Это должно соответствовать соответствующему KsUnregisterWorker при завершении использования потока. Функция может вызываться только в PASSIVE_LEVEL.

typedef PVOID PKSWORKER;

Рабочие подпрограммы работают в непрозрачных объектах PKSWORKER, созданных для каждого рабочего элемента, в очереди за один раз.

Синтаксис

KSDDKAPI NTSTATUS KsRegisterWorker(
  [in]  WORK_QUEUE_TYPE WorkQueueType,
  [out] PKSWORKER       *Worker
);

Параметры

[in] WorkQueueType

Указывает приоритет создаваемого потока. Обычно это CriticalWorkQueue, DelayedWorkQueueили HyperCriticalWorkQueue.

[out] Worker

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

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

Функция KsRegisterWorker возвращает STATUS_SUCCESS, если рабочая роль инициализирована, или если функция не возвращает ошибку потока или параметра.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ks.h (include Ks.h)
библиотеки Ks.lib