小串口通讯软件在不同机器上运行时的CPU占用率相差巨大!why……?
letre 2009-08-14 10:36:59 VC++6.0做的小软件(350K不到),用于接收串口数据或通过串口发送数据,可是在不同的机器上运行时发现很严重的问题,详细情况如下:
1、在做该软件的电脑上(XP Professonal SP3),运行一切正常(不过在接收串口数据时CPU占用率有点高,达到了15%左右,而且随时间的推移CPU占用率会缓慢增加);
2、把该软件放到另外两台安装了VC++6.0的机器上运行,情况跟在本机运行时一样,一切正常;
3、、把该软件放到第三台机器上(XP Professonal SP3,也安装了VC++6.0)运行,若不接受串口数据,则无异常发生,可是一旦开始接收数据后大概5秒钟后,CPU的占用率就会从百分之几迅速跳变到百分之三十几再到百分之六十几,直到达到百分之九十八、九十九,然后软件就不能通过正常途径推出了,只能被强行kill掉;
4、将软件放到第四台机器上(XP Home Edition,无安装VC++6.0)运行时,出现的情况跟上面3中出现的状况一样,最终只能被强行kill。
不知道出现这种现象的根本原因在哪里,通过什么方式解决会比较有效(如果可能的话,希望尽量详细一些,因为本人属还未入门的范畴,刚开始接触VC)?
另:使用网上找的几款免费的串口通讯小软件,发现随着时间的推移和接受串口数据的增多,系统的性能都会受到不同程度的影响,若接收数据量庞大的话,系统会变得非常缓慢,不知道这些问题有什么好的解决方式(因为需要经常接受串口发送过来的大量数据),恳请大家指点……
谢谢……