呵呵, state machine
状态机在各种协议栈里面应用得很广的, 如从建立连接到接受连接, 到数据通信, 到连接释放等等收发双方都处在不同的状态.
状态机一个最典型的例子就是电话机软件, 有若干个并行运行的状态, 平时是standby状态, 一有来电就转到响铃状态, 拿线后叫offhook状态, 挂线到standby的阶段叫onhook状态等等诸如此类, 如果在通话时还要进行录音等动作的话就属于并行的状态了,同时在通话时也要响应standby时的大部分动作.
如果你看看UML建模方面的知识,就会知道UML九图里面就有一个非常重要的状态图, 状态图也是象rhapsody这样的以模型驱动开发的工具产生代码的主要依据.
现在有许多这样的状态图设计工具, 如visual state, statemate, 虽然各有长处, 也还不完善, 但对于设计一些关系比较复杂的嵌入式软件是很直观的哦, 生成的代码质量也还不错,当然也是跟你的设计质量相关的.
|
|