gfridland Posted January 17, 2012 Posted January 17, 2012 I have had some reliability issues with a specific program which contains multiple actions...there are 8 scenes called to turn on OR off with 2-4 second delays between each scene...so the program should run for approximately 30 seconds. In doing some troubleshooting, I found that this same program is called on as an action within a different program/folder which contains a 10 second delay. So...the program is triggered, and 10 seconds later is is triggered again...what happens? Does it restart from the beginning or does it complete first and then run again? Does it ignore the second trigger??? I have resolved it to not compete with itself, but it raised the question on how this scenario is handled programatically...
LeeG Posted January 17, 2012 Posted January 17, 2012 It restarts from the beginning. How was the Program being Run from the other Program, Run (If) or Run (Then). Either way it starts from the beginning but with a Run (If) the If is evaluated and could run the Else clause should the If be False at the time.
gfridland Posted January 17, 2012 Author Posted January 17, 2012 Both cases it was Run-Then... Unfortunately, if the program was to simply restart, I am still unclear as to why it was unreliable...will have to see if this change helps the issue. Thanks LeeG
LeeG Posted January 17, 2012 Posted January 17, 2012 Any time there is a Wait or Repeat in a Program the If is reevaluated should a Status change or a State variable change. This reevaluation starts the Program over from the beginning of whatever clause is driven as a result of the reevaluation. This often leads to statements after a Wait unexecuted because the If status has changed.
Recommended Posts