getting_started:tutorials:sequencer2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
getting_started:tutorials:sequencer2 [2020/12/03 17:18] – [Main Sequence Has Timeout Monitor] ursgraf | getting_started:tutorials:sequencer2 [2021/03/31 15:29] – [Main Sequence Has Timeout Monitor] ursgraf | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Example with Blocking Sequence ====== | ====== Example with Blocking Sequence ====== | ||
The following example all have a main sequence which calls a few steps and a another sequence. This second sequence is a blocking sequence. That means that the main sequence pauses while the second sequence runs. A timeout monitor either supervises the main sequence or the second sequence. | The following example all have a main sequence which calls a few steps and a another sequence. This second sequence is a blocking sequence. That means that the main sequence pauses while the second sequence runs. A timeout monitor either supervises the main sequence or the second sequence. | ||
- | ===== Main Sequence | + | ===== Main Sequence |
- | In the EEROS library you will find a directory with examples. Open a shell in the build directory of your EEROS library and run | + | In the EEROS library you will find a directory with examples. |
+ | Open a shell in the build directory of your EEROS library and run | ||
< | < | ||
$ ./ | $ ./ | ||
Line 14: | Line 15: | ||
===== Main Sequence Has Timeout Monitor ===== | ===== Main Sequence Has Timeout Monitor ===== | ||
- | A next example demonstrates what happens if the main sequence is interrupted by a monitor while a subsequence is called. Run | + | The next example |
< | < | ||
$ examples/ | $ examples/ | ||
</ | </ | ||
- | [{{ .: | + | The main sequence |
- | The main sequence | + | |
- | ==== Restarting | + | [{{ : |
- | Change the timeout behavior of the monitor | + | \\ |
- | < | + | |
- | while (getRunningState() == SequenceState:: | + | ===== Main Sequence |
+ | |||
+ | A next example demonstrates what happens if the main sequence is interrupted by a monitor | ||
+ | < | ||
+ | $ examples/ | ||
</ | </ | ||
- | The behavior | + | The main sequence |
- | ==== Resuming | + | [{{ : |
- | For the last experiment change the timeout behavior of the monitor to '' | + | \\ |
- | < | + | |
- | setTimeoutExceptionSequence(eSeq); | + | ===== Main Sequence |
+ | |||
+ | A next example demonstrates what happens if the main sequence | ||
+ | < | ||
+ | $ examples/ | ||
</ | </ | ||
- | This in turn will reset the timeout and increase | + | |
+ | The main sequence does its steps and starts the second sequence. The timeout monitor of the main sequence fires while the second sequence still runs. The monitor causes an exception sequence to run. After that both sequences stop immediately and the main starts again as the timeout behavior is set to '' | ||
+ | |||
+ | [{{ : | ||
+ | \\ | ||
+ | ===== Subsequence Has Timeout Monitor ===== | ||
+ | |||
+ | A next example demonstrates what happens if the subsequence is interrupted by a monitor. Run | ||
+ | < | ||
+ | $ examples/ | ||
+ | </ | ||
+ | |||
+ | The main sequence does its steps and starts the second sequence. The timeout monitor of the subsequence fires. The monitor causes an exception sequence to run. After that the sugsequence stops immediately as the timeout behavior is set to '' | ||
+ | |||
+ | [{{ : | ||
+ | \\ | ||
+ | |||
+ | ===== Subsequence Has Timeout Monitor with Resume ===== | ||
+ | |||
+ | A next example demonstrates what happens if the subsequence is interrupted by a monitor. Run | ||
+ | < | ||
+ | $ examples/ | ||
+ | </ | ||
+ | |||
+ | The main sequence does its steps and starts the second sequence. The timeout monitor of the subsequence fires. The monitor causes an exception sequence to run. After that the subsequence continues from where it was interrupted as its timeout behavior is set to '' | ||
+ | |||
+ | [{{ : | ||
+ | \\ | ||
+ | |||
+ | ===== Subsequence Has Timeout Monitor with Restart ===== | ||
+ | |||
+ | A next example demonstrates what happens if the subsequence is interrupted by a monitor. Run | ||
+ | < | ||
+ | $ examples/ | ||
+ | </ | ||
+ | |||
+ | The main sequence does its steps and starts the second sequence. The timeout monitor of the subsequence fires. The monitor causes an exception sequence to run. After that the subsequence restarts from the beginning as its timeout behavior is set to '' | ||
+ | |||
+ | [{{ : | ||
+ | \\ | ||
getting_started/tutorials/sequencer2.txt · Last modified: 2021/03/31 15:33 by ursgraf