다음을 통해 공유


RxFinalizeSrvCall 함수(fcb.h)

RxFinalizeSrvCall 지정된 SRV_CALL 구조를 완료합니다. 호출자는 디바이스 개체와 연결된 netname 테이블에 배타적 잠금이 있어야 합니다.

통사론

BOOLEAN RxFinalizeSrvCall(
  [out] OUT PSRV_CALL ThisSrvCall,
  [in]  IN BOOLEAN    ForceFinalize
);

매개 변수

[out] ThisSrvCall

완료할 SRV_CALL 구조체에 대한 포인터입니다.

[in] ForceFinalize

참조 수에 관계없이 종료를 강제 적용할지 여부를 나타내는 값입니다.

ForceFinalize FALSE 경우 SRV_CALL 완료하려면 ThisSrvCall 가리키는 SRV_CALL 구조의 NodeReferenceCount 멤버가 1이어야 합니다.

반환 값

RxFinalizeSrvCall 성공 시 TRUE 반환하거나 종료가 발생하지 않은 경우 FALSE .

발언

RxFinalizeSrvCall 루틴은 일반적으로 네트워크 미니 리트리버 드라이버에서 직접 호출되지 않습니다. RDBSS는 SRV_CALL 참조 수가 1로 감소할 때 내부적으로 이 루틴을 호출합니다. 또한 RDBSS는 네트워크 미니 리트리버 드라이버가 중지되거나 언로드될 때 RxFinalizeSrvCall 호출합니다.

RxFinalizeSrvCall호출하기 전에 디바이스 개체와 연결된 netname 테이블에 대한 잠금을 단독 모드로 획득해야 합니다.

현재 실행 중인 프로세스 ID가 RDBSS 프로세스 ID와 같으면 지연된 작업자 스레드가 디스패치되어 SRV_CALL 구조체가 삭제됩니다. 이 작업자 스레드는 나중에 네트워크 미니 리다이렉터에서 제공하는 MRxFinalizeSrvCall 루틴을 호출하여 SRV_CALL 완료합니다. 그렇지 않으면 MRxFinalizeSrvCall 루틴을 직접 호출하여 SRV_CALL 완료합니다.

요구 사항

요구
대상 플랫폼 바탕 화면
헤더 fcb.h(Mrxfcb.h, Fcb.h 포함)
IRQL <= APC_LEVEL

참고 항목

MRxFinalizeSrvCall

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeNetRoot

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

SRV_CALL 구조체