我需要通过串口顺序发布一组命令,当需要终止时,可以将未发布的命令进行终止,那么如何通过队列进行控制呢?小弟是菜鸟,还请老鸟指教!

解决方案 »

  1.   

    还有分组的话,我觉得不可能了,因为我的顺序执行一组指令,是按照界面中预定的一个顺序进行发布指令的!而变量设置为运行的话,该怎么操作呢?没有这么用过,是不是就是加上一个boolean型的参数进行控制就可以?
      

  2.   


    FIsRunning : boolean; //true 正在运行,false停止运行
    出列前判断FIsRunning
    if not FIsRunning 
     then 清空队列
      

  3.   

    不知所云。    FcComSendBuf[0] := conComHead;
        FcComSendBuf[1] := 8;
        FcComSendBuf[2] := MachID;
        FcComSendBuf[3] := $10;
        FcComSendBuf[4] := tRamAddr8;
        FcComSendBuf[5] := tRamAddr16;
        FcComSendBuf[6] := tRamAddr24;
        FcComSendBuf[7] := CalcuSendSum(7);
        ComPort.ClearBuffer(True,True);
        ComPort.Write(FcComSendBuf[0],8);这是一个写串口的程序,FcComSendBuf是一个数组类型,用的cport3.1控件你的“当需要终止时,可以将未发布的命令进行终止”,不明白什么意思,如果需要停止的话,判断条件
    让它停止不就完了,