Hi Daniel,
?
I think I understand now. In my mind, I was over-simplifying the "single thread" idea.? So was thinking that the "Execute A after......" would block the thread for ten seconds, then execute the "return" and only then would the next ConditionalNG get access to the thread and be able to run. I think your "only one ConditionalNG can run at a time. So they have to wait for each other" threw me a little bit.
?
Internal Sensors coming right up!
?
I agree that implementing "wait" would be wrong!
?
Please may I also ask the best way to introduce a variable into the "Execute A after....."?? I have another ConditionalNG, again running only at startup. It requests that various Turnouts move to their startup positions and, obviously I don't want all the servos to move at once, so have used "Execute A after...." to set a turnout, then wait, then set another turnout and so on. Empirical evidence suggests that is working fine!?
?
?
I hope that is a legitimate use of "Execute A after...."!
?
But I would like to avoid repeatedly hardcoding "1" in each of the many places where I am waiting. I tried adding a Memory Variable......
?
?
.....with the intention of then having something like:
?
But, there doesn't seem to be an obvious way.? Trying "reference", unsurprisingly won't save. Trying LocalVariable or Formula save, but then fall over at run-time, again unsurprisingly as I have a Memory Variable not a Local Variable or a Formula . If you have time, it would be great to have a view on how best to introduce a variable (which ideally needs to be visible across multiple ConditionalNGs).
?
Thanks, Nick
?