共用方式為


WdfInterruptQueueWorkItemForIsr 函式 (wdfinterrupt.h)

[適用於 KMDF 和 UMDF]

WdfInterruptQueueWorkItemForIsr 方法會將架構中斷物件的 EvtInterruptWorkItem 排入佇列, 回呼函式來執行。

語法

BOOLEAN WdfInterruptQueueWorkItemForIsr(
  [in] WDFINTERRUPT Interrupt
);

參數

[in] Interrupt

架構中斷物件的句柄。

返回值

如果驅動程式的 ISR 在 IRQL = PASSIVE_LEVEL執行,WdfInterruptQueueWorkItemForIsr 如果成功將中斷物件的 EvtInterruptWorkItem 排入佇列, 回呼函式,則會傳 回 true。 如果回呼函式先前已排入佇列且尚未執行,則方法會傳回 FALSE

如果驅動程式的 ISR 在 IRQL = DIRQL 上執行,架構會先將內部 DPC 排入佇列,然後從該 DPC 將工作專案排入佇列。 在此情況下,如果架構成功將內部 DPC 排入佇列,WdfInterruptQueueWorkItemForIsr 會傳回 TRUE。 如果先前已將內部 DPC 排入佇列,此方法會傳回 FALSE

如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。

備註

驅動程式通常會從 EvtInterruptIsr 回呼函式內呼叫 WdfInterruptQueueWorkItemForIsr

中斷物件的 EvtInterruptWorkItem 回呼函式只能在執行之前排入佇列一次。 因此,如果呼叫 WdfInterruptQueueWorkItemForIsr 成功,後續呼叫將不會排入其他回呼佇列。

如需在架構型驅動程式中處理中斷的詳細資訊,請參閱 處理硬體中斷

如果驅動程式呼叫 WdfInterruptQueueWorkItemForIsr 且未指定 EvtInterruptWorkItem 回呼函式的中斷物件,就會發生錯誤檢查。

需求

要求 價值
目標平臺 普遍
最低 KMDF 版本 1.11
最低 UMDF 版本 2.0
標題 wdfinterrupt.h (包括 Wdf.h)
程式庫 Wdf01000.sys (KMDF):WUDFx02000.dll (UMDF)
IRQL <=DIRQL
DDI 合規性規則 DriverCreate(kmdf)

另請參閱

EvtInterruptDpc

EvtInterruptIsr

WdfInterruptCreate

WdfInterruptQueueDpcForIsr