Scadao 发表于 2020-1-14 13:55:45

带UI的对列状态机编程框架

带UI的对列状态机编程框架

很多时候,当我们尝试为应用程序决定体系结构时,会很难下决定。 状态机非常适合顺序进程,但在需要用户输入时不足。 生产者/消费者体系结构非常适合处理 UI 事件,但在处理预编程顺序任务方面不是那么出色。 因此,将这两种体系结构结合起来是有意义的。 在此示例中,我们有一个响应用户输入的体系结构,但仍通过遵循预编程序列保留状态机的优势。 这给了我们很多东西。 首先,我们可以随时中断状态机与更重要的任务。 其次,我们可以引入一个主关机功能,该功能将正常中止。 第三,我们可以处理多个"子状态计算机." 如果几个不同的进程共享几个公共状态,这非常有用。 这允许您创建一个状态体系结构,在无法预先编程的决策地方请求用户输入。 此外,由于这是基于事件的,程序在等待用户输入时不执行任何操作。 传统的状态机必须不断轮询命令,从而对处理器开销很大,但却什么事都没做。

打开并运行 VI。 您会注意到队列用于处理状态信息。 这非常有用,因为我们可以一次排队多个状态,从而创建一个序列。 我们还具有中止和执行更重要(关闭)案例的功能。 并随意发布问题所在。

http://forums.ni.com/legacyfs/online/15830_BD.png


页: [1]
查看完整版本: 带UI的对列状态机编程框架