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

Lihat juga

FltInitializePushLock