August Zajonc wrote:
I've got a quick beginner question.

I've got a consumer. When it's done working it checks to see if anything else is waiting in the private queue that it's using. If there is nothing waiting, it just wants to listen (with a callback or similar) rather than spin in a loop burning cycles.

It wants any messages received after it's last inquiry to trigger the callback (to avoid a race where it checks, a message then arrives, then it starts listening, but leaves that message orphaned). The trick though is that there is only 1 consumer, and if it's processing a message, it'd prefer not to receive a callback for new ones until it is again "IDLE".

What's the classic way to handle this? Is this built in, or do a I need to set the callback to something that manages my consumer and keeps track of consumer state.

- August




Note sure what language you are using, but here is an example in c++ client of what you are wanting to do

https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid/cpp/examples/pub-sub/topic_listener.cpp

if you are using another language, shout and we can point you the respective example.

regards
Carl.

Reply via email to