共用方式為


WdmlibIoGetAffinityInterrupt 函式 (iointex.h)

WdmlibIoGetAffinityInterrupt 函式會取得中斷物件的群組親和性。

語法

NTSTATUS WdmlibIoGetAffinityInterrupt(
  [in]  PKINTERRUPT     InterruptObject,
  [out] PGROUP_AFFINITY GroupAffinity
);

參數

[in] InterruptObject

中斷物件的指標。 此參數指向 KINTERRUPT 結構,表示驅動程式接收裝置中斷的註冊。 結構不透明。 呼叫端在先前呼叫 WdmlibIoConnectInterruptExIoConnectInterrupt 例程中取得這個指標值。

[out] GroupAffinity

呼叫端配置緩衝區的指標,例程會寫入 GROUP_AFFINITY 結構,指定 InterruptObject 指向之中斷物件的群組親和性。 這個緩衝區必須夠大,才能包含 結構。

傳回值

如果呼叫成功,WdmlibIoGetAffinityInterrupt 會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括:

傳回碼 Description
STATUS_INVALID_PARAMETER
InterruptObject 參數不會指向有效的中斷物件。

備註

內核模式驅動程式會呼叫此例程,以取得驅動程式註冊中斷服務例程的一組邏輯處理器, (ISR) 可以接收裝置中斷。 這個處理器集是由 GROUP_AFFINITY 結構所描述,該結構會指定組號和親和性遮罩。 指派給特定ISR註冊的所有處理器都必須屬於相同的群組。

驅動程式已在先前呼叫 WdmlibIoConnectInterruptExIoConnectInterrupt 例程中註冊 ISR。

在 Windows 7 中, WdmlibIoConnectInterruptExIoConnectInterrupt 只會將裝置中斷指派給群組 0 中的邏輯處理器。 這是預設的結果。 驅動程式可以在 INF 檔案中指定其裝置的不同中斷親和性,或指定其回應 IRP_MN_FILTER_RESOURCE_REQUIREMENTS 要求。 如需如何變更插斷親和性的詳細資訊,請參閱 WHDC 網站上 有超過 64 個處理器白皮書的支持系統

規格需求

需求
最低支援的用戶端 適用於 Windows 7 和更新版本的 Windows。
目標平台 Windows
標頭 iointex.h (包括 Iointex.h、Wdm.h、Ntddk.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL 任何層級

另請參閱

GROUP_AFFINITY

IRP_MN_FILTER_RESOURCE_REQUIREMENTS

IoConnectInterrupt

KINTERRUPT

WdmlibIoConnectInterruptEx