Fungsi FltAcquirePushLockExclusiveEx (fltkernel.h)
Rutinitas FltAcquirePushLockExclusiveEx memperoleh kunci push yang diberikan untuk akses eksklusif oleh utas panggilan.
Sintaks
VOID FLTAPI FltAcquirePushLockExclusiveEx(
[in, out] PEX_PUSH_LOCK PushLock,
ULONG Flags
);
Parameter
[in, out] PushLock
Penunjuk kunci push buram. Pointer ini harus diinisialisasi oleh panggilan sebelumnya ke FltInitializePushLock.
Flags
Bitmask bendera yang mengontrol atribut kunci. Bendera bisa menjadi nilai berikut.
Bendera | Makna |
---|---|
FLT_PUSH_LOCK_DISABLE_AUTO_BOOST | Nonaktifkan dorongan otomatis kunci pendorongan. |
FLT_PUSH_LOCK_ENABLE_AUTO_BOOST | Usang; tidak berpengaruh. Mengaktifkan dorongan otomatis penguncian dorong. |
Mengembalikan nilai
Tidak ada.
Keterangan
FltAcquirePushLockExclusiveEx memperoleh kunci push yang diberikan untuk akses eksklusif oleh utas panggilan.
Kunci push mirip dengan struktur ERESOURCE (juga disebut sumber daya) karena dapat diperoleh untuk akses bersama atau eksklusif. Untuk informasi selengkapnya tentang kunci push, lihat entri referensi untuk FltInitializePushLock.
Tidak seperti struktur ERESOURCE, kunci pendorongan tidak dapat diperoleh secara rekursif. Jika penelepon sudah memperoleh kunci push untuk akses eksklusif atau bersama, utas akan macet.
Ketika pemanggil akan diberikan akses eksklusif ke kunci push yang diberikan tergantung pada hal berikut:
Jika kunci push saat ini tidak berwenang, akses eksklusif diberikan segera ke utas saat ini.
Jika kunci pendorongan telah diperoleh untuk akses eksklusif atau bersama oleh utas lain, utas saat ini dimasukkan ke dalam status tunggu hingga kunci pendorongan dapat diperoleh.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | fltkernel.h |
Pustaka | FltMgr.lib |