如何在Boost状态图中实现非阻塞转换延迟?
答案 0 :(得分:0)
我看到两种解释问题的方法。如果要使用http://www.boost.org/doc/libs/1_55_0/libs/statechart/doc/tutorial.html#AsynchronousStateMachines
实现异步状态机否则,如果您想延迟转换,您可以实现一个始终丢弃事件的自定义转换,但设置一个带有异步回调的计时器,该回调会发布一个不同的事件,导致转换在以后发生。您可能不希望在此期间处理事件。因此,您可以转换到WaitingToTransition状态而不是丢弃该事件,该状态会延迟除计时器回调中的所有事件之外的所有事件。如果您不想在延迟转换之前调用OnExit操作,则可以将WaitingToTransition状态添加为子状态以及不执行任何初始子状态。
如果这些答案都不符合您的要求,请提供您想要做的更多信息。