基于状态机的软件框架好处
1. 有较好的代码框架2. 相对与一般的操作系统,占用内存比较少,因为传统的操作系统每个任务必须给够栈,一般都要3K左右。而FSM始终用一个栈。
3. 避免了由于资源竞争引发的问题
FSM的最基本思想: 当前状态 + 事件 = 动作 + 下一个状态。
状态、事件、动作是FSM的三个基本属性。一般进入FSM有一个初始化的状态,事件触发其状态的动作,并且进入下一个状态。其实所有的用户代码处理都可以分解为状态同步的形式。
YSJ_FSM 除了基本的事件触发,状态转换功能,还加入了默认的状态,以防用户状态转换出错。
Source download :https://github.com/yangshanjin/YSJ_FSM