IWDFIoRequest2::Requeue 메서드(wudfddi.h)
[경고: UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에 새 기능이 추가되지 않으며 최신 버전의 Windows 10 UMDF 1에 대한 지원이 제한되어 있습니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다. 자세한 내용은 UMDF를 사용하여 시작 참조하세요.]
Requeue 메서드는 I/O 요청을 드라이버에 전달된 I/O 큐의 헤드에 반환합니다.
구문
HRESULT Requeue();
반환 값
작업이 성공하면 다시 큐에 S_OK 반환합니다. 그렇지 않으면 이 메서드는 다음 값 중 하나를 반환할 수 있습니다.
반환 코드 | 설명 |
---|---|
|
다음 중 하나가 발생하면 이 값이 반환됩니다.
|
이 메서드는 Winerror.h에 포함된 다른 값 중 하나를 반환할 수 있습니다.
설명
드라이버는 I/O 큐에 수동 디스패치 메서드를 사용하는 경우에만 Requeue를 호출할 수 있습니다.
예제
다음 코드 예제에서는 IQueueCallbackStateChange::OnStateChange 콜백 함수의 세그먼트를 보여줍니다. 세그먼트는 I/O에서 I/O 요청을 가져온 다음 큐에 요청을 반환합니다.
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 |