Right now if X objects are enrolled then a workflow will execute them in parallel.
Sometimes we may need more control, or at least to use a queue and execute each object in sync, one after another. It’s possible that the outcome of one workflow run would change the next.
For example is two objects update the same contact record, we have no way to tell which object would update because it would be whatever object that executed last would have the last update.
If we have custom code that, for example, searches for an existing contact and creates one if not found. A second workflow executing in parallel could be doing the same thing leading to issues