Compartir a través de


Función SerCxGetActivity (sercx.h)

El método SerCxGetActivity recupera el estado del trabajo pendiente para el controlador de controlador serie.

Sintaxis

void SerCxGetActivity(
  [in]      WDFDEVICE       Device,
  [in, out] PSERCX_ACTIVITY Activity
);

Parámetros

[in] Device

Un identificador WDFDEVICE para el objeto de dispositivo de marco que representa el controlador serie.

[in, out] Activity

Puntero a una estructura de SERCX_ACTIVITY asignada por el autor de la llamada. El autor de la llamada debe haber llamado previamente a la función SERCX_ACTIVITY_INIT para inicializar esta estructura antes de su uso inicial. Después, cada SerCxGetActivity llamada actualiza el contenido de esta estructura para realizar un seguimiento de los elementos de trabajo que el controlador del controlador está listo para procesar.

Valor devuelto

Ninguno

Observaciones

El controlador de controlador serie llama a este método para recibir un resumen del trabajo de procesamiento que debe realizar en nombre de la extensión del marco serie (SerCx). Normalmente, se llama a SerCxGetActivity mediante la rutina DPC de transmisión y recepción en el controlador del controlador.

El parámetro activity apunta a una estructura de SERCX_ACTIVITY que describe el trabajo pendiente para el controlador del controlador. El trabajo pendiente que SerCx asigna al controlador del controlador está controlado por solicitudes de E/S de clientes, pero una solicitud de E/S no genera necesariamente un elemento de trabajo. Por ejemplo, si SerCx tiene una cantidad suficiente de datos recibidos en su búfer de memoria para completar una solicitud de lectura pendiente, esta solicitud no hace que el miembro Receiveing de la estructura de SERCX_ACTIVITY se establezca en TRUE.

Para recorrer los elementos de trabajo pendientes, la rutina de transmisión y recepción de DPC llama SerCxGetActivity, procesa una operación de transmisión o recepción completa y, a continuación, llama a SerCxGetActivity de nuevo para determinar si otra operación de otro tipo requiere trabajo. Si otra operación requiere trabajo, este trabajo puede comenzar durante la misma devolución de llamada, pero debe detenerse si el valor devuelto de una llamada a SerCxProgressReceive o SerCxProgressTransmit dirige la rutina DPC para volver a programarse para que se ejecute más adelante.

Un bloqueo protege la estructura SERCX_ACTIVITY que actualiza la llamada serCxGetActivity de . Durante la llamada, los controladores de eventos adquieren este bloqueo en SerCx para actualizar el resumen del trabajo que está actualmente pendiente para el controlador del controlador.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 8.
de la plataforma de destino de Universal
encabezado de sercx.h
irQL <= DISPATCH_LEVEL

Consulte también

SERCX_ACTIVITY

SERCX_ACTIVITY_INIT

SerCxCompleteWait

serCxProgressReceive

serCxProgressTransmit