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 :
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.
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.) |