FltAcquirePushLockExclusiveEx 함수(fltkernel.h)

FltAcquirePushLockExclusiveEx 루틴은 호출 스레드에서 단독 액세스를 위해 지정된 푸시 잠금을 획득합니다.

구문

VOID FLTAPI FltAcquirePushLockExclusiveEx(
  [in, out] PEX_PUSH_LOCK PushLock,
            ULONG         Flags
);

매개 변수

[in, out] PushLock

불투명 푸시 잠금 포인터입니다. 이 포인터는 FltInitializePushLock에 대한 이전 호출에 의해 초기화되어야 합니다.

Flags

잠금의 특성을 제어하는 플래그의 비트 마스크입니다. 플래그 는 다음 값일 수 있습니다.

플래그 의미
FLT_PUSH_LOCK_DISABLE_AUTO_BOOST 푸시 잠금 자동 부스트를 사용하지 않도록 설정합니다.
FLT_PUSH_LOCK_ENABLE_AUTO_BOOST 되지 않는; 은 아무런 영향을 주지 않습니다. 푸시 잠금 자동 부스트를 사용하도록 설정합니다.

반환 값

없음

설명

FltAcquirePushLockExclusiveEx 는 호출 스레드에서 단독 액세스를 위해 지정된 푸시 잠금을 획득합니다.

푸시 잠금은 공유 또는 단독 액세스를 위해 획득할 수 있다는 ERESOURCE 구조(리소스라고도 함)와 유사합니다. 푸시 잠금에 대한 자세한 내용은 FltInitializePushLock에 대한 참조 항목을 참조하세요.

ERESOURCE 구조와 달리 푸시 잠금은 재귀적으로 획득할 수 없습니다. 호출자가 배타적 또는 공유 액세스에 대한 푸시 잠금을 이미 획득한 경우 스레드가 중단됩니다.

호출자에게 지정된 푸시 잠금에 대한 단독 액세스 권한이 부여되는 경우는 다음 사항에 따라 달라집니다.

  • 푸시 잠금이 현재 소유되지 않은 경우 현재 스레드에 즉시 단독 액세스 권한이 부여됩니다.

  • 다른 스레드에서 배타적 또는 공유 액세스를 위해 푸시 잠금을 이미 획득한 경우 푸시 잠금을 획득할 수 있을 때까지 현재 스레드가 대기 상태로 전환됩니다.

요구 사항

요구 사항
헤더 fltkernel.h
라이브러리 FltMgr.lib

추가 정보

FltInitializePushLock