Metode IWDFInterrupt::SetPolicy (wudfddi.h)

[Peringatan: UMDF 2 adalah versi terbaru UMDF dan pengganti UMDF 1. Semua driver UMDF baru harus ditulis menggunakan UMDF 2. Tidak ada fitur baru yang ditambahkan ke UMDF 1 dan ada dukungan terbatas untuk UMDF 1 pada versi Windows 10 yang lebih baru. Driver Universal Windows harus menggunakan UMDF 2. Untuk informasi selengkapnya, lihat Mulai menggunakan UMDF.]

Metode SetPolicy menentukan prioritas interupsi, afinitas prosesor, dan kebijakan afinitas untuk interupsi tertentu.

Sintaks

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

Parameter

[in] Policy

Enumerator jenis WDF_INTERRUPT_POLICY yang menentukan kebijakan afinitas prosesor untuk interupsi.

[in] Priority

Enumerator jenis WDF_INTERRUPT_PRIORITY yang menentukan prioritas untuk interupsi.

[in] TargetProcessorSet

Nilai berjenis KAFFINITY yang menentukan afinitas prosesor untuk interupsi, jika parameter Kebijakan diatur ke WdfIrqPolicySpecifiedProcessors.

Nilai kembali

Tidak ada

Keterangan

Mulai dari Windows Vista, driver dapat menentukan prioritas interupsi, afinitas prosesor, dan kebijakan afinitas. Untuk informasi selengkapnya tentang cara menggunakan registri untuk mengambil alih nilai yang ditetapkan SetPolicy , lihat Afinitas Interupsi dan Prioritas.

Jika driver berjalan pada versi sistem operasi yang lebih lama dari Windows Vista, kerangka kerja mengabaikan nilai yang ditentukan driver ketika memanggil SetPolicy.

Untuk informasi selengkapnya tentang nilai registri dan bagian INF yang menentukan prioritas interupsi, afinitas prosesor, dan kebijakan afinitas, lihat Mengganggu Afinitas dan Prioritas.

Jika driver memanggil SetPolicy, driver harus melakukannya dalam fungsi panggilan balik IDriverEntry::OnDeviceAdd , setelah memanggil metode IWDFDevice3::CreateInterrupt .

Untuk informasi selengkapnya tentang penanganan gangguan pada driver UMDF, lihat Mengakses Perangkat Keras dan Menangani Gangguan.

Contoh

Contoh kode berikut menetapkan perangkat yang mengganggu prosesor 0, dengan prioritas normal.

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

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

Persyaratan

Persyaratan Nilai
Akhir dukungan Tidak tersedia di UMDF 2.0 dan yang lebih baru.
Target Platform Desktop
Versi UMDF minimum 1.11
Header wudfddi.h
DLL WUDFx.dll

Lihat juga

IWDFInterrupt

KAFINITAS

WDF_INTERRUPT_POLICY

WDF_INTERRUPT_PRIORITY