That would confirm the results of my first dabble at this, which used two connections, though I could of swore I telnetted in from two different sessions and was able to do this.
The plan is to provide multiple connections but I'd like each thread to really take advantage of each connection.
At the moment I have a single connection. As each job comes in I keep a track of it. If there are currently active jobs being processed, I switch to reserve-with-timeout, allowing the thread to process results. If there are no active jobs being processed, then the connection switches to traditional blocking reserve. The problem is that the blocking reserve obviously blocks the active thread.
Mmmmm. I may have to sack off the blocking reserve and just go with reserve-with-timeout(0) and poll periodically. Not ideal, but I can't see a way around this at the moment.
Thanks for your help Jerry and Chadkouse.