COMMTIMEOUTS详解
来源:互联网 发布:网络教学工具app 编辑:程序博客网 时间:2024/05/29 12:19
COMMTIMEOUTS 结构体被用在SetCommTimeouts和GetCommTimeouts 函数中,以便设置和查询通讯设备的超时参数。这个参数决定ReadFile,WriteFile, ReadFileEx, 和WriteFileEx 操作设备的行为。
typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeoutMultiplier; DWORD WriteTotalTimeoutConstant;} COMMTIMEOUTS, *LPCOMMTIMEOUTS;
成员
- ReadIntervalTimeout
- 在通讯过程中接收两个字符之间的最长超时时间,按毫秒计算。在ReadFile操作,当接收到第一个字符时,开始一个计时周期。如果接收任意两个字符之间的时隔超过本限制,ReadFile操作将完成并返回任何已缓冲的数据。0代表本参数未设置。
如果设置为MAXDWORD, 并且ReadTotalTimeoutConstant和ReadTotalTimeoutMultiplier成员为0,代表读取操作立即返回那些已接收的数据,即使没有收到任何字符。(两个字符之间的接收间隔)
- ReadTotalTimeoutMultiplier
- 乘数用于计算读取操作的总超时时间,按毫秒计算。对于每个读取操作,这个值将乘以要读取的字节数。(读取单个字符的最大超时)
- ReadTotalTimeoutConstant
- 一个用于计算对于读取操作的总超时周期的常数,按毫秒计算。对每次读取操作,实际总超时时间为ReadTotalTimeoutMultiplier 成员与请求的字节数年的乘积加此值。
ReadTotalTimeoutMultiplier和ReadTotalTimeoutConstant成员为0代表总读取总超时时间无效(读取所有字节的时间为ReadTotalTimeoutMultiplier*BytesToRead+ReadTotalTimeoutConstant)。
- WriteTotalTimeoutMultiplier
- 乘数用来计算写操作的总超时周期,按毫秒计算。对每个写操作,这个值将乘以要写入的字节数。(写单个字符的最大超时)
- WriteTotalTimeoutConstant
- 一个用于计算写入操作的总超时周期的常数,按毫秒计算。对于每一次写入操作,实际总超时时间为WriteTotalTimeoutMultiplier 成员与要写入字节的乘积再加此值.
WriteTotalTimeoutMultiplier和WriteTotalTimeoutConstant成员为0代表总写入时间无效(写入所有字节的时间为WriteTotalTimeoutMultiplier*BytesToWrite+WriteTotalTimeoutConstant)。
备注
如果一个应用程序设置ReadIntervalTimeout和ReadTotalTimeoutMultiplier为 MAXDWORD并且设置ReadTotalTimeoutConstant 为一个大于零且小于MAXDWORD的值, 在调用ReadFile时将会发生如下现象:
- 如果在输入缓冲区中有任何字符,ReadFile 立即返回缓冲区中的内容。
- 如果在缓冲区中没有任何字符,ReadFile 将等待接收到一个字符并立即返回.
- 如果在ReadTotalTimeoutConstant指定的时间值内无任何字节返回,ReadFile超时.
0 0
- COMMTIMEOUTS详解
- COMMTIMEOUTS详解
- COMMTIMEOUTS详解(转)
- COMMTIMEOUTS详解(转)
- COMMTIMEOUTS详解(转)
- COMMTIMEOUTS
- COMMTIMEOUTS
- COMMTIMEOUTS
- COMMTIMEOUTS
- COMMTIMEOUTS详解(读写串口超时)
- 串口之COMMTIMEOUTS结构体详解
- COMMTIMEOUTS结构
- COMMTIMEOUTS结构
- COMMTIMEOUTS结构说明
- 串口编程:超时COMMTIMEOUTS结构
- 串口编程-读写超时 COMMTIMEOUTS设置
- COMMTIMEOUTS主要用于串口超时参数设置
- 如何设置串口通信中的COMMTIMEOUTS结构?
- C++ Sleep Function 用法 Sleep(-1)
- R语言ORACLE数据库连接
- 集群概念
- cocos2dx计时器
- IOS 应用事件的传递分析
- COMMTIMEOUTS详解
- 软件应用加壳程序防止破解工具Themida免费下载地址
- poj Kindergarten
- 内网劫持渗透新姿势:MITMf简要指南
- Nginx+uWSGI
- 检测大写锁定键(Caps Lock)是否被激活
- 模仿QQ空间滚动大图(上下左右和对角线方向)
- hdu 1556 简单线段树
- Pomelo中session创建和connection连接过程分析