Função RxFinalizeSrvCall (fcb.h)
RxFinalizeSrvCall finaliza a estrutura de SRV_CALL fornecida. O chamador deve ter um bloqueio exclusivo na tabela netname associada ao objeto do dispositivo.
Sintaxe
BOOLEAN RxFinalizeSrvCall(
[out] OUT PSRV_CALL ThisSrvCall,
[in] IN BOOLEAN ForceFinalize
);
Parâmetros
[out] ThisSrvCall
Um ponteiro para a estrutura SRV_CALL para finalizar.
[in] ForceFinalize
O valor que indica se a finalização deve ser forçada, independentemente da contagem de referência.
Se ForceFinalize for FALSE, o membro NodeReferenceCount da estrutura SRV_CALL apontada por ThisSrvCall deverá ser 1 para que o SRV_CALL seja finalizado.
Retornar valor
RxFinalizeSrvCall retornará TRUE em caso de êxito ou FALSE se a finalização não ocorrer:
Comentários
A rotina RxFinalizeSrvCall normalmente não é chamada por drivers de minidiretório de rede diretamente. O RDBSS chama essa rotina internamente quando a contagem de referência no SRV_CALL é decrementada para 1. O RDBSS também chama RxFinalizeSrvCall quando o driver de minidiretório de rede é interrompido ou descarregado.
Antes de chamar RxFinalizeSrvCall, um bloqueio na tabela netname associada ao objeto do dispositivo deve ser adquirido no modo exclusivo.
Se a ID do processo de execução atual for a mesma que a ID do processo RDBSS, um thread de trabalho atrasado será expedido para destruir a estrutura de SRV_CALL. Esse thread de trabalho chamará posteriormente a rotina MRxFinalizeSrvCall fornecida pelo minidiretório de rede para finalizar o SRV_CALL. Caso contrário, a rotina MRxFinalizeSrvCall será chamada diretamente para finalizar o SRV_CALL.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | fcb.h (inclua Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |