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이면 ThisSrvCall이 가리키는 SRV_CALL 구조체의 NodeReferenceCount 멤버가 1이어야 SRV_CALL 완료됩니다.
반환 값
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 |