【发布时间】:2017-01-02 20:58:30
【问题描述】:
多个延迟事件在 Boost Statechart 中如何表现?
假设我有 4 个状态和 3 个事件。非延迟转换如下所示:
S1--(E1)-->S2--(E2)-->S3--(E3)-->S4
状态机从 S1 开始。现在事件按以下顺序发布:E2、E3、E1。
我希望状态机作为这一系列事件的结果到达 S4。为了实现这一目标,我必须做什么?
- 我显然必须在 S1 中推迟 E2 和 E3。
- 我可能还必须在 S2 中推迟 E3?我想否则它会在到达 S2 时被丢弃。
我假设这部分文档:http://www.boost.org/doc/libs/1_55_0/libs/statechart/doc/reference.html#process_event 包含答案,但它非常技术性(而不是对实现的描述而不是语义——本教程也不太清楚),并且包含大量参考资料,所以很难确定。
【问题讨论】:
标签: c++ boost boost-statechart