I'm working to implement a flow where for a given source of data I can only be processing one set at a time due to external dependencies. Each set needs to go through several different steps so this isn't just a matter of limiting concurrency for a single processor. I'm trying to implement this using Wait and Notify as a gate and I've ran into a couple of limitations that I'm not sure how to get around. I first set my Wait processors to wait for a specific counter to be reset to zero before allowing a data source through but I quickly discovered that the Wait Processors tries to divide the signal counter leading to a divide by zero error. I'm assuming if zero isn't a valid value for the signal counter we should disallow it however since you can't use the Notify processor to set arbitrary values other than zero I'm not sure how your supposed to make a 0 or 1 gate. Are you supposed to have two Notify Processors back to back where one resets the counter to zero and the next increments by one? That seems a bit clunky.
Thoughts? Thanks Shawn Weeks