I'm working on a script which must parse a large XML file full of <release> tags. I've structured at the advice of tarcieri to be a chain of pools which asynchronously call eachother. It is all working but I've gotten to the point where I need to handle running out of data, but I need that to result in cascading shutdowns throughout the whole pipeline when all work is finished.
The overall pipeline goes like this: Parser -> NodeParser -> Converter (pushes to a queue).
Anyone have any suggestions? Signals seem inappropriate because you must block for those.