Structure COMMTIMEOUTS (winbase.h)
Contient les paramètres de délai d’attente d’un appareil de communication. Les paramètres déterminent le comportement des opérations ReadFile, WriteFile, ReadFileEx et WriteFileEx sur l’appareil.
Syntaxe
typedef struct _COMMTIMEOUTS {
DWORD ReadIntervalTimeout;
DWORD ReadTotalTimeoutMultiplier;
DWORD ReadTotalTimeoutConstant;
DWORD WriteTotalTimeoutMultiplier;
DWORD WriteTotalTimeoutConstant;
} COMMTIMEOUTS, *LPCOMMTIMEOUTS;
Membres
ReadIntervalTimeout
Durée maximale autorisée à s’écouler avant l’arrivée de l’octet suivant sur la ligne de communication, en millisecondes. Si l’intervalle entre l’arrivée d’un octet quelconque dépasse cette quantité, l’opération ReadFile est terminée et toutes les données mises en mémoire tampon sont retournées. La valeur zéro indique que les délais d’expiration d’intervalle ne sont pas utilisés.
Une valeur de MAXDWORD, combinée à zéro pour les membres ReadTotalTimeoutConstant et ReadTotalTimeoutMultiplier , spécifie que l’opération de lecture doit retourner immédiatement avec les octets déjà reçus, même si aucun octet n’a été reçu.
ReadTotalTimeoutMultiplier
Multiplicateur utilisé pour calculer le délai d’expiration total des opérations de lecture, en millisecondes. Pour chaque opération de lecture, cette valeur est multipliée par le nombre d’octets à lire demandé.
ReadTotalTimeoutConstant
Constante utilisée pour calculer le délai d’expiration total des opérations de lecture, en millisecondes. Pour chaque opération de lecture, cette valeur est ajoutée au produit du membre ReadTotalTimeoutMultiplier et au nombre d’octets demandé.
La valeur zéro pour les membres ReadTotalTimeoutMultiplier et ReadTotalTimeoutConstant indique que les délais d’attente totaux ne sont pas utilisés pour les opérations de lecture.
WriteTotalTimeoutMultiplier
Multiplicateur utilisé pour calculer le délai d’attente total pour les opérations d’écriture, en millisecondes. Pour chaque opération d’écriture, cette valeur est multipliée par le nombre d’octets à écrire.
WriteTotalTimeoutConstant
Constante utilisée pour calculer le délai d’expiration total des opérations d’écriture, en millisecondes. Pour chaque opération d’écriture, cette valeur est ajoutée au produit du membre WriteTotalTimeoutMultiplier et au nombre d’octets à écrire.
La valeur zéro pour les membres WriteTotalTimeoutMultiplier et WriteTotalTimeoutConstant indique que les délais d’attente totaux ne sont pas utilisés pour les opérations d’écriture.
Remarques
Si une application définit ReadIntervalTimeout et ReadTotalTimeoutMultiplier sur MAXDWORD et définit ReadTotalTimeoutConstant sur une valeur supérieure à zéro et inférieure à MAXDWORD, l’une des opérations suivantes se produit lorsque la fonction ReadFile est appelée :
- S’il existe des octets dans la mémoire tampon d’entrée, ReadFile retourne immédiatement les octets dans la mémoire tampon.
- S’il n’y a pas d’octets dans la mémoire tampon d’entrée, ReadFile attend qu’un octet arrive, puis retourne immédiatement.
- Si aucun octet n’arrive dans le délai spécifié par ReadTotalTimeoutConstant, ReadFile expire.
Configuration requise
Client minimal pris en charge | Windows XP |
Serveur minimal pris en charge | Windows Server 2003 |
En-tête | winbase.h (inclure Windows.h) |