Export (0) Print
Expand All
Expand Minimize

KeInsertQueueDpc routine

The KeInsertQueueDpc routine queues a DPC for execution.

Syntax


BOOLEAN KeInsertQueueDpc(
  _Inout_   PRKDPC Dpc,
  _In_opt_  PVOID SystemArgument1,
  _In_opt_  PVOID SystemArgument2
);

Parameters

Dpc [in, out]

Pointer to the KDPC structure for the DPC object. This structure must have been initialized by either KeInitializeDpc or KeInitializeThreadedDpc.

SystemArgument1 [in, optional]

Specifies driver-determined context data. This value is passed as the SystemArgument1 parameter to the DPC object's CustomDpc or CustomThreadedDpc routine.

SystemArgument2 [in, optional]

Specifies driver-determined context data. This value is passed as the SystemArgument2 parameter to the DPC object's CustomDpc or CustomThreadedDpc routine.

Return value

If the specified DPC object is not currently in a DPC queue, KeInsertQueueDpc queues the DPC and returns TRUE.

Remarks

If the specified DPC object has already been queued, no operation is performed except to return FALSE. Otherwise, the DPC object is inserted in a DPC queue. For more information about DPC queues, see Organization of DPC Queues.

Note that a particular DPC object and the function that it represents can each be queued for execution only once at any particular time.

Requirements

Version

Available starting with Windows 2000.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

Library

Ntoskrnl.lib

IRQL

Any level

DDI compliance rules

MarkingQueuedIrps, HwStorPortProhibitedDDIs

See also

CustomDpc
CustomThreadedDpc
KeInitializeDpc
KeRemoveQueueDpc

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft