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


Функция StreamClassCallAtNewPriority (strmini.h)

Подпрограмма StreamClassCallAtNewPriority планирует вызывать подпрограмму с другим приоритетом.

Синтаксис

VOID STREAMAPI StreamClassCallAtNewPriority(
  [in, optional] PHW_STREAM_OBJECT    StreamObject,
  [in]           PVOID                HwDeviceExtension,
  [in]           STREAM_PRIORITY      Priority,
  [in]           PHW_PRIORITY_ROUTINE PriorityRoutine,
  [in]           PVOID                Context
);

Параметры

[in, optional] StreamObject

Указатель на HW_STREAM_OBJECT структуру, указывающую, что поток связан с подпрограммой, или значение NULL , если подпрограмма связана с устройством в целом. Для каждого потока может быть только одна подпрограмма и только одна подпрограмма для устройства. Этот параметр является необязательным.

[in] HwDeviceExtension

Указатель на расширение устройства мини-драйвера. Мини-диск указывает размер этого буфера в структуре HW_INITIALIZATION_DATA , который он передает при регистрации через StreamClassRegisterMinidriver. Затем драйвер класса передает указатели на буфер в элементе HwDeviceExtensionHW_STREAM_REQUEST_BLOCK, HW_STREAM_OBJECT, HW_TIME_CONTEXT и PORT_CONFIGURATION_INFORMATION структурах, которые передаются в мини-диск.

[in] Priority

Указывает одно из значений, перечисленных в следующей таблице.

Приоритет Использование
Высокий Драйвер класса потока вызывает подпрограмму с тем же приоритетом, что и обратные вызовы StrMini Xxx мини-драйвера. Не используйте этот параметр, если только подпрограмма не должна быть синхронизирована с подпрограммой прерывания работы мини-драйвера.
Dispatch Драйвер класса потока вызывает подпрограмму в DISPATCH_LEVEL. Используйте этот приоритет, если выполнение подпрограммы занимает менее 1 миллисекунды.
Низкий Драйвер класса потока вызывает подпрограмму на PASSIVE_LEVEL. Используйте этот приоритет, если выполнение подпрограммы занимает менее 1 миллисекунды.
LowToHigh Используется, чтобы разрешить потоку, вызываемого с низким приоритетом, вернуться к высокому приоритету, чтобы можно было вызывать другие службы драйвера потокового класса.

[in] PriorityRoutine

Указатель на предоставленный мини-диск StrMiniPriorityRoutine для вызова на указанном уровне приоритета.

[in] Context

Указывает параметр, передаваемый в PriorityRoutine.

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

None

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть strmini.h (включая Strmini.h)
Библиотека Stream.lib
IRQL (См. раздел Параметры)