【紧急求助】BCB中的多串口多线程问题
第一次用BCB编写多线程的程序,而且是针对串口的,遇到问题很多,而且在处理机制上也不熟悉,希望各位朋友能够无私相助,指点一下,偶的任务期限已经超期了,不想埃K太狠了,谢谢大家!
问题描述:
程序要和多台下位机通过串口交互,每台下位机对应一个串口,我们采用多串口卡。
程序需要多个工作线程,每个工作线程对应一个下位机,能够独立运行,互不干扰,并能把交互信息显示出来,并录入日志文件。
程序中每个线程里均有流程控制问题,要求具有超时重发等异常处理机制。
现在我实现的程序中每个子线程类中封装了一个Victor的串口控件来实现串口操作,只有一台下位机时能够正常运行,但是如果有多台下位机,运行起来给人的感觉是都乱了套,好像不是多线程,线程之间有干扰,比如一个通讯有问题,一个正常时,结果正常的那个也会变得通讯超时什么的。多线程之间如何协调工作,比如日志显示、从主线程让子线程临时发送一个命令,等等这些操作如何实现呢?
不知自己是否描述清楚了,希望能够帮我一下,真的狠感激!可以另行开贴给分。