From: Andreas Huber (ah2003_at_[hidden])
Date: 2004-05-27 18:11:57
E. Gladyshev wrote:
> As for unstable states.
> Does this idiom mean that any exception event handling
> state must be considered as an implicit *inner* state of
> any other state that throws?
> So that *only* the exception handling states
> can be considered as *most inner* states.
No. Please have a look at http://tinyurl.com/2uzs5 (the whole section on
Exception Handling) again. I think it clearly explains how it all works.
> I think that one of the most important goals of
> the state machines design is to achieve
> a completely deterministic behavior.
Yes, this is important for me also.
> Doesn't your default exception handling
> idiom compromise this objective?
Do you think so because finding a handler for an exception might take
non-deterministic time? That is true on some platforms. On others you *can*
establish upper limits for finding a handler.
I chose the default this way because I believe that a majority of the users
will not have deterministic reaction time requirements. In real-time
projects you often disable exceptions anyway so the problem won't arise. I
will add a remark that real-time projects should consider not using
exceptions or check that the compilers exception handling implementation is
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk