在vb6.0下,怎样通过串口通信,实现实时监测外部数据,监测到数据有变化时,系统能够做出相应的处理,不过不能占用系统太多资源,在网上找了一下,发现用多线程能实现,可是,vb6.0不支持多线程编程,怎么办呢?有没有其他好的办法?请各位大侠帮帮忙!!
另外,我想确切指到,vb6.0到底支不支持多线程编程,权威的解答!!!!

解决方案 »

  1.   

    MsComm控件的OnComm事件接收数据并赋值给全局变量,使用Timer控件定时比对发生变化的数据与给定的初始值,当偏差大于某值时报警或通过标签提示.
      

  2.   

    哦,忘了问一下,使用Timer控件定时对比,还能实现实时监测的目的呢?会不会在还没触发Timer控件事件的时候,外部数据就出现了错误呢?我对这方面,不太了解,请指教,因为这几天,急着要用到这方面的东西……
      

  3.   

    OnComm事件就可以解决,很好处理的。
      

  4.   


    如果你的串口有大量的通信数据,你就是多线程也一样的会导致CPU占用率偏高,多线程不是解决这个问题的根本方法。
      

  5.   

    当发生一些意外情况时,仪器发送8个字节的数据,这时系统从串口接收到8个字节的数据,并进行相应的处理操作。看来使用OnComm事件就可以了,当接收到8个字节数据时就触发一下OnComm事件……
    现在,正在实施当中,等忙完这一阵子后,就来结贴……
    先谢谢楼上的帮忙了……