Remon Spekreijse编的串口Cserialport类的多串口使用问题

superhanxin5 2011-06-25 05:41:20
想不只使用4个串口,于是
直接在他的初始化函数当中更改如下
assert(portnr > 0 && portnr < 5); -》 assert(portnr > 0 && portnr < 9);
结果初始化到了7个串口就开始死循环了(如下代码)
if (m_bThreadAlive)
{
do
{
SetEvent(m_hShutdownEvent);
} while (m_bThreadAlive);
TRACE("Thread ended\n");
}

请问有什么办法能够解决吗?
...全文
241 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
superhanxin5 2011-06-30
  • 打赏
  • 举报
回复
最近没用这个,回头再仔细研究研究吧。结贴!
公共马甲0315 2011-06-28
  • 打赏
  • 举报
回复
呵呵,我也用的是这个类,只是自己派生了个。确实发现是有死循环情况,主要是m_bThreadLived没有清零,我是在子类析构中结束线程的,所以最后手动加了一条析构超时时m_bThreadLived = FALSE;
superhanxin5 2011-06-26
  • 打赏
  • 举报
回复
现象是里面的m_bThreadAlive莫名其妙的就变成-1了(正常情况下是0),然后就跳不出这个do while循环了。每次都是CPU到50%左右,不知道跟这个有没有关系.
superhanxin5 2011-06-26
  • 打赏
  • 举报
回复
这是类的下载地址
http://codeguru.earthweb.com/network/serialport.shtml

2,644

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧