共用方式為


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