Greetings,
The current behavior of the Batch Synchronization options "One Thread Only (first thread executes step, remaining threads skip)" and "Serial (one thread at a time)" is that the threads wait at that step until all threads have gotten to that point before it executes using the selected behavior. It essentially has a rendezvous built into the step. There are many times when I want the first thread that encounters that step to perform the action immediately (and then continue, with other threads skipping that step) without waiting for the other threads to also get to that point in the test.
For example, I may have three threads running in the Batch model and when the first one gets to a certain point in the test I want it to perform some action (log activity, turn something on, etc.) that I only want to be done once. I can use the "One Thread Only" option, but this causes the test to pause until all of the threads have reached that point before it performs the action of the step (once). Additionally, the remaining threads also pause at that step until the first thread completes the activity. So the undesirable delay is twofold: the first thread doesn't run the step until the other threads have also reached that point, and the other threads now wait until that activity is completed before continuing.
It would be great to have the option to select how I want this to behave. If the rendezvous could be selectable then it would provide the desired functionality. I'm sure custom coding could create this effect somehow, but I don't see a straightforward way to have only one thread run a step (and others skip) without waiting for the other threads to arrive or the remaining threads to wait until the first completes. The "Serial" Batch Synchronization option can be implemented in a different way without major effort (using locks, rendezvous, etc.), but the "One Thread Only" with selectable rendezvous option is what is truly missing (and it may make sense to have it available for both).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.