Compartir a través de


Función IoRequestDpc (wdm.h)

La rutina IoRequestDpc pone en cola una rutina DpcForIsr proporcionada por el controlador para completar el procesamiento de E/S controlado por interrupciones en un IRQL inferior.

Sintaxis

void IoRequestDpc(
  [in] PDEVICE_OBJECT         DeviceObject,
  [in] PIRP                   Irp,
  [in] __drv_aliasesMem PVOID Context
);

Parámetros

[in] DeviceObject

Puntero al objeto de dispositivo para el que se está procesando la solicitud que provocó la interrupción.

[in] Irp

Puntero al IRP actual del dispositivo especificado.

[in] Context

Puntero a un contexto determinado por el controlador que se va a pasar a la rutina DPC.

Valor devuelto

None

Observaciones

Los autores de llamadas de IoRequestDpc deben ejecutarse en DIRQL.

Los controladores llaman a IoRequestDpc desde una rutina InterruptService . Por este motivo, IoRequestDpc se ejecuta en el valor DIRQL especificado por SynchronizeIrql cuando el controlador llamó a IoConnectInterrupt. Sin embargo, también es posible poner en cola un DPC en cualquier IRQL >= DISPATCH_LEVEL mediante las rutinas KeXxxDpc . Para obtener más información, vea ¿Qué tipo de DPC debe usar?

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Escritorio
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
IRQL DIRQL

Consulte también

IoInitializeDpcRequest

KeInitializeDpc

KeInsertQueueDpc