JKI State Machine Objects

cancel
Showing results for 
Search instead for 
Did you mean: 

Abort SMO

Hi!

I am working on an test executor application, where SMO seems to be a perfect mean to achieve most of functionalities.

However, I have encountered a problem with one of the features, I have planned to implement - Abort Hanged/Frozen step.

In one of previous versions of SMO, there was an "abort" buttton in default testlauncher. I have understood, that it was a way to abort a SMO in whichever state (i.e. whichever case of main case struct of state machine) it is.  Now I see this functionalityy is not any more the part of shipping test launcher - maybe due to this misunderstanding I have fallen into.

In attached example I have shown the problematic case. After a standard initializarion of state machine in process.vi, I go to HANGUP state, which consits of lonley infinite loop (simulating my hang up state). Now, when I Abort the SMO, the testlauncher smoothly rolls down, but provess.vi clone still remains in memory.  If I try to Stop the SMO, the testlauncher freezes (waiting for processes to synchronize - which will never happen).

Analyzing what happens in destroy.vi  I have nailed the issue to "abortVI" invoke node residing in last for loop of abort.vi giving an 1000 error: vi not in compatible state.

My main question is - is there a way to Abort an SMO that has got stucked in one of states outside idle (without event structure, which coule fetch abort event)?

If so - what technique one may use to get this functionality ?

0 Kudos
Message 1 of 1
(4,537 Views)