Метод IWDFIoRequest2::Requeue (wudfddi.h)
[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с помощью UMDF.]
Метод Requeue возвращает запрос ввода-вывода в головку очереди ввода-вывода, из которой он был доставлен драйверу.
Синтаксис
HRESULT Requeue();
Возвращаемое значение
Функция requeue возвращает S_OK, если операция выполнена успешно. В противном случае этот метод может возвращать одно из следующих значений:
Код возврата | Описание |
---|---|
|
Это значение возвращается, если происходит одно из следующих действий:
|
Этот метод может возвращать одно из других значений, содержащихся в Winerror.h.
Комментарии
Драйвер может вызывать requeue только в том случае, если он использует метод диспетчеризации вручную для очереди ввода-вывода.
Примеры
В следующем примере кода показан сегмент функции обратного вызова IQueueCallbackStateChange::OnStateChange . Сегмент получает запрос ввода-вывода из операции ввода-вывода, а затем возвращает запрос в очередь.
void
CMyQueue::OnStateChange(
__in IWDFIoQueue* pWdfQueue,
__in WDF_IO_QUEUE_STATE
)
{
HRESULT hr;
IWDFIoRequest* Request;
...
//
// Get the IWDFIoRequest interface of the next request.
//
hr = pWdfQueue->RetrieveNextRequest(&Request);
...
//
// Declare an IWDFIoRequest2 interface pointer and obtain the
// IWDFIoRequest2 interface from the IWDFIoRequest interface.
//
CComQIPtr<IWDFIoRequest2> r2 = Request;
//
// Add code here to determine whether to process or requeue the request.
//
...
//
// Requeue the request.
//
hr = r2->Requeue();
if (FAILED(hr)) goto Error;
...
}
Требования
Требование | Значение |
---|---|
Дата окончания поддержки | Недоступно в UMDF 2.0 и более поздних версиях. |
Целевая платформа | Персональный компьютер |
Минимальная версия UMDF | 1,9 |
Верхняя часть | wudfddi.h (включая Wudfddi.h) |
DLL | WUDFx.dll |