Microsoft Windows CE 3.0  

COMMTIMEOUTS

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

This structure is used in the SetCommTimeoutsand GetCommTimeoutsfunctions to set and query the time-out parameters for a communication device. The parameters determine the behavior of the ReadFileand WriteFilefunction operations on the device.

typedef struct _COMMTIMEOUTS {
DWORD
ReadIntervalTimeout
;
DWORD
ReadTotalTimeoutMultiplier
;
DWORD
ReadTotalTimeoutConstant
;
DWORD
WriteTotalTimeoutMultiplier
;
DWORD
WriteTotalTimeoutConstant
;
} COMMTIMEOUTS,*LPCOMMTIMEOUTS;

Members

ReadIntervalTimeout
Specifies the maximum acceptable time, in milliseconds, to elapse between the arrival of two characters on the communication line. During a ReadFileoperation, the time period begins when the first character is received. If the interval between the arrival of any two characters exceeds this amount, the ReadFileoperation is completed and any buffered data is returned. A value of zero indicates that interval time-outs are not used.
ReadTotalTimeoutMultiplier
Specifies the multiplier, in milliseconds, used to calculate the total time-out period for read operations. For each read operation, this value is multiplied by the requested number of bytes to be read.
ReadTotalTimeoutConstant
Specifies the constant, in milliseconds, used to calculate the total time-out period for read operations. For each read operation, this value is added to the product of the ReadTotalTimeoutMultipliermember and the requested number of bytes.

A value of zero for both the ReadTotalTimeoutMultiplierand ReadTotalTimeoutConstantmembers indicates that total time-outs are not used for read operations.

WriteTotalTimeoutMultiplier
Specifies the multiplier, in milliseconds, used to calculate the total time-out period for write operations. For each write operation, this value is multiplied by the number of bytes to be written.
WriteTotalTimeoutConstant
Specifies the constant, in milliseconds, used to calculate the total time-out period for write operations. For each write operation, this value is added to the product of the WriteTotalTimeoutMultipliermember and the number of bytes to be written.

A value of zero for both the WriteTotalTimeoutMultiplierand WriteTotalTimeoutConstantmembers indicates that total time-outs are not used for write operations.

Remarks

If an application sets ReadIntervalTimeoutand ReadTotalTimeoutMultiplierto MAXDWORD and sets ReadTotalTimeoutConstantto a value greater than zero and less than MAXDWORD, one of the following occurs when the ReadFilefunction is called:

  • If there are any characters in the input buffer, ReadFilereturns immediately with the characters in the buffer.
  • If there are no characters in the input buffer, ReadFilewaits until a character arrives and then returns immediately.
  • If no characters arrive within the time specified by ReadTotalTimeoutConstant, ReadFiletimes out.

    Requirements

    Runs On Versions Defined in Include Link to
    Windows CE OS 1.0 and later Winbase.h    
    Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

    See Also

    GetCommTimeouts, ReadFile, SetCommTimeouts, WriteFile