共用方式為


NdisMSynchronizeWithInterruptEx 函式 (ndis.h)

Miniport 驅動程式會呼叫 NdisMSynchronizeWithInterruptEx 函式,以同步處理 miniport 驅動程式提供的函式與 MiniportInterrupt 函式的執行。

語法

BOOLEAN NdisMSynchronizeWithInterruptEx(
  [in] NDIS_HANDLE                            NdisInterruptHandle,
  [in] ULONG                                  MessageId,
  [in] MINIPORT_SYNCHRONIZE_INTERRUPT_HANDLER SynchronizeFunction,
  [in] PVOID                                  SynchronizeFunction,
  [in] PVOID                                  SynchronizeContext
);

參數

[in] NdisInterruptHandle

迷你埠驅動程式在先前呼叫 中取得的中斷句柄 NdisMRegisterInterruptEx 函式。

[in] MessageId

驅動程式必須同步處理的訊息訊號中斷。 如果 NDIS 未授與驅動程式發出訊號中斷的訊息,NDIS 會忽略此參數。 MessageId 是 的索引在內 IO_INTERRUPT_MESSAGE_INFO_ENTRY 結構 IO_INTERRUPT_MESSAGE_INFO 結構。 當驅動程式成功向 NdisMRegisterInterruptEx 函式註冊 MSI 時,NDIS 會在 MessageInfoTable 成員傳遞關聯IO_INTERRUPT_MESSAGE_INFO結構的指標。

[in] SynchronizeFunction

驅動程式的進入點 MiniportSynchronizeInterrupt 函式。

[in] SynchronizeFunction

驅動程式的進入點 MiniportSynchronizeInterrupt 函式。

[in] SynchronizeContext

在 SynchronizeContext 上傳遞至 MiniportSynchronizeInterrupt 函式的 miniport-driver-determined 內容區域的指標。

傳回值

NdisMSynchronizeWithInterruptEx 會傳回 MiniportSynchronizeInterrupt 傳回的布爾值。

言論

NdisMRegisterInterruptEx 註冊中斷的迷你埠驅動程式 使用 NdisMSynchronizeWithInterruptEx。 的值 MiniportSynchronizeInterrupt 函式傳回也會由 NdisMSynchronizeWithInterruptEx傳回。 這個傳播的值會提供給呼叫端的狀態。

任何與在 DIRQL 執行之任何其他驅動程式函式共用資源的迷你埠驅動程式函式,都必須使用 NdisMSynchronizeWithInterruptEx 來同步存取這些資源。 MiniportSynchronizeInterrupt 函式也會在 DIRQL 上執行,且共用資源會受到系統配置的微調鎖定保護。 因此,共用資源會受到 MiniportInterrupt 函式和呼叫端的同時存取保護。

NdisMSynchronizeWithInterruptEx 釋放系統微調鎖定,並在傳回控制權之前還原其呼叫端的原始 IRQL。

如需取得和釋放 NDIS 微調鎖定的詳細資訊,請參閱網路驅動程式中的 同步處理和通知

要求

要求 價值
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平臺 普遍
標頭 ndis.h (包括 Ndis.h, Video.h)
連結庫 Ndis.lib
IRQL <= DIRQL
DDI 合規性規則 NdisMDeregisterInterruptEx(ndis)

另請參閱

IO_INTERRUPT_MESSAGE_INFO

IO_INTERRUPT_MESSAGE_INFO_ENTRY

MiniportInterrupt

MiniportSynchronizeInterrupt

NdisMRegisterInterruptEx