Bagikan melalui


Metode IWDFInterrupt::TryToAcquireInterruptLock (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 TryToAcquireInterruptLock memperoleh kunci interupsi jika tidak ada utas lain yang telah memperolehnya.

Sintaks

BOOLEAN TryToAcquireInterruptLock();

Mengembalikan nilai

Metode mengembalikan TRUE jika kunci interupsi berhasil diperoleh. Jika tidak, metode mengembalikan FALSE.

Keterangan

Tidak seperti IWDFInterrupt::AcquireInterruptLock, IWDFInterrupt::TryToAcquireInterruptLock tidak menunggu kunci interupsi tersedia jika utas lain memegangnya.

Saat berjalan dalam utas arbitrer, seperti metode panggilan balik antrean I/O, driver harus memanggil IWDFInterrupt::TryToAcquireInterruptLock alih-alih IWDFInterrupt::AcquireInterruptLock. Misalnya, driver memanggil IWDFInterrupt::TryToAcquireInterruptLock dari IQueueCallbackRead::OnRead. Melakukannya menghindari kemungkinan kebuntuan, seperti yang dijelaskan di bagian Keterangan IWDFInterrupt::AcquireInterruptLock.

Driver tidak boleh mencoba memperoleh kunci secara rekursif. Jika tersambung ke debugger, kerangka kerja memperkenalkan titik henti dalam skenario ini.

Untuk informasi selengkapnya tentang penguncian interupsi manual, lihat Menyinkronkan Kode Interupsi.

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

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

IWDFInterrupt::AcquireInterruptLock

WdfInterruptTryToAcquireLock