função __RxSynchronizeBlockingOperations (rxcontx.h)
__RxSynchronizeBlockingOperations sincroniza o bloqueio de solicitações de E/S com a mesma fila de trabalho.
Sintaxe
NTSTATUS __RxSynchronizeBlockingOperations(
[in, out] IN OUT PRX_CONTEXT RxContext,
[in] IN PFCB Fcb,
[in, out] IN OUT PLIST_ENTRY BlockingIoQ,
[in] IN BOOLEAN DropFcbLock
);
Parâmetros
[in, out] RxContext
Um ponteiro para o RX_CONTEXT da operação que está sendo sincronizada.
[in] Fcb
Um ponteiro para o FCB.
[in, out] BlockingIoQ
Um ponteiro para o LIST_ENTRY da fila.
[in] DropFcbLock
Um valor booliano que indica se o recurso FCB deve ser liberado. Se esse parâmetro for TRUE, o recurso FCB será liberado.
Retornar valor
__RxSynchronizeBlockingOperations retorna STATUS_SUCCESS sobre êxito ou um valor NTSTATUS apropriado, como um dos seguintes:
Código de retorno | Descrição |
---|---|
|
A solicitação de E/S e a RX_CONTEXT associada foram canceladas. |
|
O RxContext era para uma operação assíncrona e o RxContext foi adicionado à fila. |
Comentários
A rotina __RxSynchronizeBlockingOperations sincroniza o bloqueio de solicitações de E/S para a mesma fila de trabalho. O RDBSS usa __RxSynchronizeBlockingOperations internamente para sincronizar operações de pipe nomeado. A fila de trabalho é a fila referenciada pela FOBX (extensão de objeto de arquivo) associada ao Fcb.
Um minidiretório de rede pode usar __RxSynchronizeBlockingOperations para sincronizar operações em uma fila separada que é mantida pelo minidiretório de rede.
Se RxContext estiver marcado para uma operação assíncrona, __RxSynchronizeBlockingOperations adicionará o RxContext à fila e retornará STATUS_PENDING. Se RxContext estiver marcado para uma operação síncrona, __RxSynchronizeBlockingOperations bloqueará e RxContext será retomado quando uma chamada for feita para RxResumeBlockedOperations_Serially.
Se a solicitação de E/S de bloqueio tiver sido cancelada, __RxSynchronizeBlockingOperations retornará STATUS_CANCELLED para indicar o erro.
O membro SyncEvent da estrutura RX_CONTEXT apontada por RxContext deve ter sido redefinido antes de chamar __RxSynchronizeBlockingOperations. O recurso FCB deve ser bloqueado antes de chamar __RxSynchronizeBlockingOperations se o parâmetro DropFcbLock estiver definido como TRUE.
As duas macros a seguir são definidas no Windows Server 2003 ou posterior para chamar __RxSynchronizeBlockingOperations:
RxSynchronizeBlockingOperations – chamadas com o parâmetro DropFcbLock definido como FALSE.
RxSynchronizeBlockingOperationsAndDropFcbLock – chamadas com o parâmetro DropFcbLock definido como TRUE.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | A rotina de __RxSynchronizeBlockingOperations só está disponível no Windows Server 2003. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | rxcontx.h (inclua Rxcontx.h) |
Confira também
RxDereferenceAndDeleteRxContext_Real