Partager via


IDmaChannelSlave ::WaitForTC, méthode (portcls.h)

La méthode WaitForTC attend que le nombre de terminaux de transfert DMA soit terminé, ou expire si l’intervalle de délai d’expiration spécifié expire en premier.

Syntaxe

NTSTATUS WaitForTC(
  ULONG Timeout
);

Paramètres

Timeout

Spécifie l’intervalle de délai d’attente en microsecondes. Cet intervalle est la durée pendant laquelle la méthode attend la fin du transfert avant l’expiration du délai d’attente. L’intervalle de délai d’attente spécifié est arrondi à l’incrément de dix microsecondes le plus proche.

Valeur de retour

La méthode WaitForTC retourne NTSTATUS. Elle retourne STATUS_SUCCESS si l’appel a réussi. Sinon, la méthode retourne un code d’erreur approprié.

Remarques

Note

Microsoft prend en charge un environnement diversifié et inclusif. Cet article contient des références à la terminologie que le guide de style Microsoft pour la communication sans biais reconnaît comme exclusion. Le mot ou l’expression est utilisé dans cet article pour la cohérence, car il apparaît actuellement dans le logiciel. Lorsque le logiciel est mis à jour pour supprimer la langue, cet article sera mis à jour pour être aligné.

Cette méthode ne doit être appelée que dans deux situations :

  1. Après avoir envoyé une demande au matériel pour s’arrêter, le pilote miniport appelle WaitForTC afin d’attendre que la DMA se termine avant de poursuivre l’exécution.

  2. Dans le cas du matériel DMA qui n’est pas initialisé automatiquement, le pilote miniport peut appeler WaitForTC à tout moment pour attendre la fin d’un transfert DMA.

Étant donné que cette méthode attend simplement que le transfert DMA se termine ou expire, les appelants d’WaitForTC doivent s’exécuter à l’PASSIVE_LEVEL IRQL.

Exigences

Exigence Valeur
d’en-tête portcls.h
IRQL PASSIVE_LEVEL (voir la section Remarques.)

Voir aussi

interface IDmaChannelSlave