I have a question concerning Gateway Event Scripts.
Let’s say you have a script that takes 10 seconds to run.
You set up a Gateway Event script for 1,200 ms Delay Type = Fixed Delay and Threading = Dedicated.
I “think” my script can get re-entered because the first one takes more than 1,200ms to execute.
Is re-entrancy possible?
I do NOT want to use Threading = Shared because it makes everything else wait.
Is there a way to determine if the previous execution of the Gateway Event script is still executing from the first call?
When the second event comes in, could I check to see if the first event is still running? If it is, I would just IGNORE the second event or handle it any way I want?
Event scripts are documented to not execute if the prior instance is running. Even on a dedicated thread.
And follow the link to
Actually, with type = Fixed Delay, your events will never even try to run together. That mode applies the delay after the event script finishes before starting the next. Type = Fixed Rate can have back-to-back execution if any one event takes longer than the defined period.
THat is what I read for Fixed Rate. THat in the event that your first execution is NOT completed yet, the second execution will NOT run until the first one is complete. Mind you the second one will run “right on the heels” of the first one. From the link it says “in rapid succession”. So I gathered that they will NEVER run “on top” of each other, no possiblity of re-entrancy…
However, I am experiencing re-entrancy in a script that takes approximately 20 seconds to run, but I set the TIMER up for 1,000ms FIXED and SHARED.
It does NOT always re-enter…just occasionally.