다음을 통해 공유


RxDereference 함수(rxprocs.h)

RxDereference 는 RDBSS에서 사용하는 여러 참조 개수 데이터 구조에 대해 구조체의 NodeReferenceCount 멤버를 하나씩 감소합니다.

구문

void RxDereference(
  [in, out] IN OUT PVOID          Instance,
  [in]      IN LOCK_HOLDING_STATE LockHoldingState
);

매개 변수

[in, out] Instance

역참조할 참조 계산 데이터 구조에 대한 포인터입니다.

[in] LockHoldingState

이 데이터 구조에 대한 적절한 잠금이 유지되는 모드입니다. 이 매개 변수는 LOCK_HOLDING_STATE 열거형에 대해 다음 값 중 하나일 수 있습니다.

LHS_LockNotHeld

현재 잠금이 유지되지 않습니다.

LHS_SharedLockHeld

공유 잠금이 유지되고 있습니다.

LHS_ExclusiveLockHeld

배타적 잠금이 유지되고 있습니다.

반환 값

없음

설명

RxDereference 는 RDBSS에서 사용하는 다음 데이터 구조에서 NodeReferenceCount 멤버를 역참조(1씩 감소)하는 데 사용할 수 있습니다.

SRV_CALL

NET_ROOT

V_NET_ROOT

SRV_OPEN

FOBX

RxDereference가 다른 유형의 RDBSS 데이터 구조와 함께 호출되는 경우 루틴으로 인해 시스템이 확인된 빌드에서 ASSERT가 발생합니다.

RxDereference에 의해 역참조(감소)된 후 NodeReferenceCount 멤버가 0보다 작으면 RxDereference는 시스템이 확인된 빌드에서 ASSERT로 설정됩니다.

NodeReferenceCount 멤버가 1로 감소하고 LockHoldingState 매개 변수가 LHS_ExclusiveLockHeld 경우 데이터 구조의 instance 즉시 완료할 수 있습니다. 그렇지 않으면 데이터 구조의 instance 제거되도록 태그가 지정되고 나중에 종료됩니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 rxprocs.h(Rxprocs.h 포함)
IRQL <= APC_LEVEL

추가 정보

RxReference

FOBX 구조체

NET_ROOT 구조체

SRV_CALL 구조체

SRV_OPEN 구조체

V_NET_ROOT 구조체