共用方式為


EVT_WDF_INTERRUPT_SYNCHRONIZE回呼函式 (wdfinterrupt.h)

[適用於 KMDF 和 UMDF]

驅動程式的 EvtInterruptSynchronize 事件回呼函式會執行必須與 EvtInterruptIsr 回呼函式同步的作業。

語法

EVT_WDF_INTERRUPT_SYNCHRONIZE EvtWdfInterruptSynchronize;

BOOLEAN EvtWdfInterruptSynchronize(
  [in] WDFINTERRUPT Interrupt,
  [in] WDFCONTEXT Context
)
{...}

參數

[in] Interrupt

架構中斷物件的句柄。

[in] Context

驅動程式提供的資訊,驅動程式在呼叫 WdfInterruptSynchronize 時指定。

返回值

如果作業成功,EvtInterruptSynchronize 回呼函式必須傳回 TRUE TRUE。 否則,此函式必須傳回 FALSE

備註

若要執行 EvtInterruptSynchronize 回呼函式,驅動程式必須呼叫 WdfInterruptSynchronize

如果驅動程式已設定插斷對象來處理裝置 IRQL (DIRQL),則在呼叫 EvtInterruptSynchronize 回呼函式之前,架構會將處理器的中斷要求層級提高到 DIRQL,並取得中斷物件 WDF_INTERRUPT_CONFIG 結構中指定的驅動程式微調鎖定。

因此,當 EvtInterruptSynchronize 回呼函式正在執行時,中斷物件的 EvtInterruptIsr 回呼函式(以及持有微調鎖定時在 DIRQL 執行的任何其他程式代碼)都無法執行。

EvtInterruptSynchronize 回呼函式必須設計,使其只執行短時間。 它們通常用來存取中斷數據,而中斷物件的其他 EvtInterruptSynchronizeEvtInterruptIsr 回呼函式存取。

從 KMDF 1.11 版開始,您的驅動程式可以提供 被動層級中斷處理。 如果驅動程式已要求被動層級中斷處理,則在 IRQL = PASSIVE_LEVEL呼叫 EvtInterruptSynchronize 函式之前,架構會取得驅動程式在中斷物件 WDF_INTERRUPT_CONFIG 結構中設定的被動層級中斷鎖定。

如需 EvtInterruptSynchronize 回呼函式的詳細資訊,請參閱 同步處理中斷程式代碼

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

需求

要求 價值
目標平臺 普遍
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
標題 wdfinterrupt.h (包括 Wdf.h)
IRQL (請參閱一節。

另請參閱

EvtInterruptIsr

WDF_INTERRUPT_CONFIG

WdfInterruptSynchronize