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 回呼函式必須設計,使其只執行短時間。 它們通常用來存取中斷數據,而中斷物件的其他 EvtInterruptSynchronize 或 EvtInterruptIsr 回呼函式存取。
從 KMDF 1.11 版開始,您的驅動程式可以提供 被動層級中斷處理。 如果驅動程式已要求被動層級中斷處理,則在 IRQL = PASSIVE_LEVEL呼叫 EvtInterruptSynchronize 函式之前,架構會取得驅動程式在中斷物件 WDF_INTERRUPT_CONFIG 結構中設定的被動層級中斷鎖定。
如需 EvtInterruptSynchronize 回呼函式的詳細資訊,請參閱 同步處理中斷程式代碼。
如需在架構型驅動程式中處理中斷的詳細資訊,請參閱 處理硬體中斷。
需求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
標題 | wdfinterrupt.h (包括 Wdf.h) |
IRQL | (請參閱一節。 |