Функция WdfDpcEnqueue (wdfdpc.h)
[Применимо только к KMDF]
Метод WdfDpcEnqueue планирует выполнение функции обратного вызова объекта DPC EvtDpcFunc.
Синтаксис
BOOLEAN WdfDpcEnqueue(
[in] WDFDPC Dpc
);
Параметры
[in] Dpc
Дескриптор объекта DPC платформы.
Возвращаемое значение
WdfDpcEnqueue возвращает TRUE, если он успешно добавляет указанный объект DPC в очередь DPC системы. В противном случае метод возвращает FALSE.
Ошибка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
Замечания
Метод WdfDpcEnqueue добавляет указанный объект DPC в очередь DPC системы, если он еще не находится в очереди. (Если объект DPC уже был в очереди, метод возвращает FALSE.) Если система не выполняет задачи с более высоким приоритетом, он удаляет объект DPC из очереди и вызывает функцию обратного вызова объекта EvtDpcFunc.
После выполнения функции обратного вызова последующий вызов WdfDpcEnqueue добавит объект DPC обратно в очередь DPC.
Дополнительные сведения об использовании объектов DPC см. в разделе обслуживаниепрерывания.
Примеры
В следующем примере кода выполняется функция обратного вызова, связанная с объектом DPC. В примере используется возвращаемое значение метода WdfDpcEnqueue в качестве возвращаемого значения функции. В примере кода WdfDpcCreate показано, как был создан объект DPC.
return WdfDpcEnqueue(PDevExt->CompleteWriteDpc);
Требования
Требование | Ценность |
---|---|
целевая платформа | универсальный |
минимальная версия KMDF | 1.0 |
Заголовок | wdfdpc.h (include Wdf.h) |
Библиотека | Wdf01000.sys (см. управление версиями библиотеки Платформы).) |
IRQL | Любой уровень |
правил соответствия DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |