WORK_QUEUE_ITEM結構 (wdm.h)

WORK_QUEUE_ITEM結構是用來將工作專案張貼至系統工作佇列。

警告

請特別小心使用此結構。 請參閱下列一節。

語法

typedef struct _WORK_QUEUE_ITEM {
  LIST_ENTRY             List;
  PWORKER_THREAD_ROUTINE WorkerRoutine;
  __volatile PVOID       Parameter;
} WORK_QUEUE_ITEM, *PWORK_QUEUE_ITEM;

成員

List

多加連結的清單結構。 此結構用來將工作專案新增至系統工作佇列。

WorkerRoutine

回呼例程的指標,此例程會在清除工作項目時處理此工作專案。 此回呼例程宣告如下:

VOID
(*PWORKER_THREAD_ROUTINE)(
    IN PVOID Parameter
    );

參數

參數成員中指定的內容信息指標。

Parameter

要傳遞給 WorkerRoutine 成員中所指定回呼例程之內容資訊的指標。

備註

若要初始化WORK_QUEUE_ITEM結構,請呼叫 ExInitializeWorkItem

若要將初始化的工作專案張貼至系統工作佇列,請呼叫 ExQueueWorkItem

ExInitializeWorkItem 和 ExQueueWorkItem 只能在指定的工作專案未與任何裝置物件或裝置堆疊相關聯的情況下使用。 在其他所有情況下,驅動程式都應該使用IoAllocateWorkItemIoFreeWorkItem和IoQueueWorkItem,因為只有這些例程可確保與指定工作專案相關聯的裝置物件仍可供使用,直到處理工作項目為止。

規格需求

需求
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Fltkernel.h)

另請參閱

ExInitializeWorkItem

ExQueueWorkItem

IoAllocateWorkItem

IoFreeWorkItem

IoQueueWorkItem