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 |