Partager via


SerCxGetActivity, fonction (sercx.h)

La méthode SerCxGetActivity récupère le status de travail en attente pour le pilote de contrôleur série.

Syntaxe

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

Paramètres

[in] Device

Un handle WDFDEVICE pour l’objet d’appareil framework qui représente le contrôleur série.

[in, out] Activity

Pointeur vers une structure de SERCX_ACTIVITY allouée par l’appelant. L’appelant doit avoir précédemment appelé la fonction SERCX_ACTIVITY_INIT pour initialiser cette structure avant son utilisation initiale. Par la suite, chaque appel SerCxGetActivity met à jour le contenu de cette structure pour suivre les éléments de travail prêts à être traités par le pilote de contrôleur.

Valeur de retour

None

Remarques

Le pilote du contrôleur série appelle cette méthode pour recevoir un résumé du travail de traitement qu’il doit effectuer pour le compte de l’extension SerCx (Serial Framework Extension). En règle générale, SerCxGetActivity est appelé par la routine DPC de transmission/réception dans le pilote du contrôleur.

Le paramètre Activity pointe vers une structure SERCX_ACTIVITY qui décrit le travail en attente pour le pilote de contrôleur. Le travail en attente que SerCx affecte au pilote de contrôleur est piloté par les demandes d’E/S des clients, mais une demande d’E/S ne génère pas nécessairement un élément de travail. Par exemple, si SerCx a une quantité suffisante de données reçues dans sa mémoire tampon pour effectuer une demande de lecture en attente, cette requête n’entraîne pas la définition du membre récepteur de la structure SERCX_ACTIVITY sur TRUE.

Pour parcourir les éléments de travail en attente, la routine DPC de transmission/réception appelle SerCxGetActivity, traite une opération de transmission ou de réception complète, puis appelle à nouveau SerCxGetActivity pour déterminer si une autre opération d’un autre type nécessite du travail. Si une autre opération nécessite du travail, ce travail peut commencer pendant le même rappel, mais doit s’arrêter si la valeur de retour d’un appel à SerCxProgressReceive ou SerCxProgressTransmit indique à la routine DPC de se replanifier pour s’exécuter ultérieurement.

Un verrou protège la structure SERCX_ACTIVITY mise à jour par l’appel SerCxGetActivity . Pendant l’appel, ce verrou est acquis par les gestionnaires d’événements dans SerCx pour mettre à jour le résumé du travail actuellement en attente pour le pilote de contrôleur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 8.
Plateforme cible Universal
En-tête sercx.h
IRQL <= DISPATCH_LEVEL

Voir aussi

SERCX_ACTIVITY

SERCX_ACTIVITY_INIT

SerCxCompleteWait

SerCxProgressReceive

SerCxProgressTransmit