共用方式為


IWDFInterrupt::SetPolicy 方法 (wudfddi.h)

[警告: UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,且較新版本的 #DB41505572C20421CAB87DEF6B9DB139C 上,UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱使用 UMDF 使用者入門。]

SetPolicy 方法會指定指定中斷優先順序、處理器親和性和指定中斷的親和性原則。

語法

void SetPolicy(
  [in] WDF_INTERRUPT_POLICY   Policy,
  [in] WDF_INTERRUPT_PRIORITY Priority,
  [in] KAFFINITY              TargetProcessorSet
);

參數

[in] Policy

指定中斷之處理器親和性原則 的WDF_INTERRUPT_POLICY型別列舉值。

[in] Priority

指定中斷優先順序 的WDF_INTERRUPT_PRIORITY型別列舉值。

[in] TargetProcessorSet

如果 Policy 參數設定為 WdfIrqPolicySpecifiedProcessors,則為 KAFFINITY 型別值,指定中斷的處理器親和性。

傳回值

備註

從 Windows Vista 開始,驅動程式可以指定中斷的優先順序、處理器親和性和親和性原則。 如需如何使用登錄覆寫 SetPolicy 所設定值的詳細資訊,請參閱 中斷親和性和優先順序

如果驅動程式是在早於 Windows Vista 的作業系統版本上執行,架構會忽略驅動程式在呼叫 SetPolicy 時所指定的值。

如需指定中斷優先順序、處理器親和性和親和性原則之登錄值和 INF 區段的詳細資訊,請參閱 中斷親和性和優先順序

如果驅動程式呼叫 SetPolicy,在呼叫 IWDFDevice3::CreateInterrupt 方法之後,它必須在其 IDriverEntry::OnDeviceAdd 回調函式中執行此動作。

如需在 UMDF 驅動程式中處理中斷的詳細資訊,請參閱 存取硬體和處理中斷

範例

下列程式代碼範例會以正常優先順序將裝置中斷指派給處理器 0。

#define AFFINITY_MASK(n) ((ULONG_PTR)1 << (n))

pIWdfInterrupt->SetPolicy(
                          WdfIrqPolicySpecifiedProcessors,
                          WdfIrqPriorityNormal,
                          AFFINITY_MASK(0)
                          );

規格需求

需求
終止支援 在 UMDF 2.0 和更新版本中無法使用。
目標平台 桌面
最低UMDF版本 1.11
標頭 wudfddi.h
Dll WUDFx.dll

另請參閱

IWDFInterrupt

KAFFINITY

WDF_INTERRUPT_POLICY

WDF_INTERRUPT_PRIORITY