So my set up is that each producer creates 2 queues (send queue and recv queue). When a consumer connects, it listens to the advisory queue and attaches to all the send queues. So for example, a consumer may be watching 10 send queues.
The main work loop is: for (;;) { foreach queue WaitForMutex ReceiveNoWait() ReleaseMutex } The stuff with the mutex is because we are running 200 consumers on single CPU VMs with another heavy process, so we kind of want to switch off between that process and this consumer so they don't try to do work at the same time and kill the machine. Anyways... my question is... if we are monitoring the queue via the web console, it seems like occasionally (kinda frequently) we get into a situation where a msg shows pending, but it has actually been dispatched to a consumer... What I'm getting at, is if the ReceiveNoWait() is pulling a message, why is it still showing as pending in the web console? -- View this message in context: http://activemq.2283324.n4.nabble.com/Can-you-explain-how-this-part-works-tp4670560.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.