Función RxIndicateChangeOfBufferingStateForSrvOpen (rxprocs.h)

Se llama a RxIndicateChangeOfBufferingStateForSrvOpen para registrar una solicitud de estado de búfer de cambio (una indicación de interrupción de interbloqueo, por ejemplo) para su posterior procesamiento. Si se cumplen las condiciones previas necesarias, el interbloqueo se procesa más.

Sintaxis

void RxIndicateChangeOfBufferingStateForSrvOpen(
  PMRX_SRV_CALL SrvCall,
  PMRX_SRV_OPEN SrvOpen,
  PVOID         SrvOpenKey,
  PVOID         Context
);

Parámetros

SrvCall

Puntero a la estructura SRV_CALL.

SrvOpen

Puntero a la estructura SRV_OPEN.

SrvOpenKey

Puntero a la clave para la estructura de clave de SRV_OPEN.

Context

Puntero al contexto que se va a devolver al minidirector de red durante las devoluciones de llamada para procesar la solicitud.

Valor devuelto

None

Observaciones

Esta rutina registra la solicitud de estado de almacenamiento en búfer de cambios insértela en la lista de registro (procesamiento de nivel DPC) o en la lista de distribuidores o controladores adecuada.

Se trata de una instancia en la que, en las indicaciones de cambio de estado de almacenamiento en búfer del servidor, use la clave generada por el cliente (la dirección SRV_OPEN en sí misma es la mejor clave que se puede usar). Esto implica que no se requiere ninguna búsqueda adicional.

Sin embargo, si se llama a esta rutina en el nivel DPC, la indicación se procesa como si fuera necesario realizar la búsqueda.

Si este subproceso ya ha adquirido el recurso para el FCB, la indicación de cambio de estado de almacenamiento en búfer se procesa inmediatamente sin ningún retraso adicional. RxIndicateChangeOfBufferingStateForSrvOpen llama inmediatamente a RxChangeBufferingState en este caso.

Las rutinas internas llamadas por esta rutina pueden producir un error debido a una falta de memoria disponible (no se puede asignar memoria de grupo no paginada, por ejemplo), pero dado que se trata de una rutina VOID, no se devuelve ningún error cuando se produce esta condición.

Si una solicitud de estado de almacenamiento en búfer se puede procesar inmediatamente en lugar de estar en cola para su procesamiento más adelante, se puede llamar a RxChangeBufferingState .

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado rxprocs.h (incluya Rxprocs.h, Struchdr.h, Fcb.h)
IRQL <= APC_LEVEL

Consulte también

RX_CONTEXT

RxChangeBufferingState

RxIndicateChangeOfBufferingState