开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Win7 x64 MINGW
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
#include <windows.h>
问题(Question):
在读取 COM port 时使用
ReadFile(Cport[comport_number], buf, size, (LPDWORD)((void *)&n), NULL);
时若设定
COMMTIMEOUTS Cptimeouts;
Cptimeouts.ReadIntervalTimeout = MAXDWORD;
Cptimeouts.ReadTotalTimeoutMultiplier = 0;
Cptimeouts.ReadTotalTimeoutConstant = 5000; //5000 ms
Cptimeouts.WriteTotalTimeoutMultiplier = 0;
Cptimeouts.WriteTotalTimeoutConstant = 5000; //5000 ms
此设定是每五秒检查一次,不符合需求,
例如在2秒时有资料,要等到5秒时才读到。
若设为0,则会造成cpu耗尽的状况,
请教是否有更好的读取方法?
感恩