IWDFInterrupt::SetPolicy 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 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
如果 原則 參數設定為 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 |