我需要执行很多个msg。不是使用常见的轮询。众多的msg中有三个四个需要比其他的优先权要高,优先低的甚至可以两三秒轮一次。我想,没事的时候就让他完全空闲,(但是这个空闲从机不允许)从而可以最短时间接驳到真正的读写需求。(已经正在执行优先低的,将已成事实)我只是不知道done已经on了的时候是否属于我假设的完全空闲的状态。
通讯有几个目的。
1.达到我程序要求的读写。
2.一旦某任务完成,优先处理高优先级的msg。
3.没有任何通讯任务时,我希望线路上可以发一个最短的广播,使所有从机的掉线检测计时器复位,(从机收到任何主机完整信息都会复位此计时器)避免从机产生掉线报警。这个广播要尽可能的短,使得广播过程中发生通讯任务时可以更快地转到工作中。但是这个广播不能取消,也不能太长。太长了,会阻碍读写任务的执行。
4.假设done位on的时候线路上是有不明信息在交流着的,那么我将无需使用广播,也可以使从机掉线计时器复位。
以上就是我假想的,可以更快调度通讯的策略。这个策略可以比轮询更为有效地发送重要的信息忽略次要的信息。