NDIS_WAIT_FOR_MUTEX makro (ndis.h)
Makro NDIS_WAIT_FOR_MUTEX menempatkan utas saat ini ke dalam status tunggu hingga objek mutex yang ditentukan diatur ke status sinyal.
Sintaks
void NDIS_WAIT_FOR_MUTEX(
_M_
);
Parameter
_M_
Penunjuk ke objek mutex jenis NDIS_MUTEX yang diinisialisasi. Pemanggil menginisialisasi objek mutex dalam panggilan sebelumnya ke makro NDIS_INIT_MUTEX . NDIS_MUTEX adalah pembungkus untuk jenis KMUTEX.
Nilai kembali
NDIS_WAIT_FOR_MUTEX mengembalikan STATUS_SUCCESS jika operasi berhasil diselesaikan. Jika tidak, kode kesalahan NTSTATUS akan dikembalikan.
Keterangan
Driver jaringan NDIS harus menggunakan makro NDIS_WAIT_FOR_MUTEX untuk menunggu mutex beralih ke status yang disinyalir.
Driver tidak dapat menunggu interval waktu bukan nol pada objek mutex pada IRQL yang dinaikkan atau dalam konteks utas arbitrer (yaitu, konteks utas apa pun saat ini ketika fungsi driver dipanggil).
NDIS_WAIT_FOR_MUTEX memeriksa status objek mutex saat ini untuk menentukan apakah operasi tunggu dapat segera dipenuhi. Jika operasi dapat segera dipenuhi, pembaruan yang diperlukan dibuat untuk objek mutex. Jika tidak, utas saat ini dalam status menunggu, dan utas baru dipilih untuk eksekusi pada prosesor saat ini.
Makro ini adalah pembungkus NDIS untuk rutinitas KeWaitForSingleObject .
Penelepon NDIS_WAIT_FOR_MUTEX harus berjalan di IRQL == PASSIVE_LEVEL dan dalam konteks utas nonarbitrer.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
Target Platform | Universal |
Header | ndis.h |
IRQL | PASSIVE_LEVEL (lihat bagian Keterangan) |
Aturan kepatuhan DDI | Irql_Synch_Function(ndis) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk