No Sleep no system.util.invokeLater()

I understand why not to use sleep as I have experienced its shortcomings. I also understand that system.util.invokeLater() is for client side.

I have 3 tag change gateway scripts that reset a 400+ tags (counters) at the beginning of each shift using system.tag.writeAll. The trigger is the the change in shift (1,2,3) tag.
I need to do this 10 min after shift change as well.

Using sleep and then just copy the script after worked with 1 but it doesn’t work with 2 or all 3 enabled. The sleep(600) gets applied one after an other Not at the same time.

So how would I run all 3 at the same time on the tag change and again 10 min later?
I do have a ShiftSecond Counter I could use to do it again based on it, but I am looking for a more simple method and trying not to add more tag change scripts.


1 Like