Question regarding Queue object

Nick Craig-Wood nick at craig-wood.com
Mon Apr 28 05:30:03 EDT 2008


David <wizzardx at gmail.com> wrote:
>  Another idea would be to have multiple queues, one per thread or per
>  message type "group". The producer thread pushes into the appropriate
>  queues (through an intelligent PutMsg function), and the consumer
>  threads pull from the queues they're interested in and ignore the
>  others.

Unfortunately a thread can only wait on one Queue at once (without
polling).  So really the only efficient solution is one Queue per
thread.

Make an intelligent PutMsg function which knows which Queue (or
Queues) each message needs to be put in and all the threads will have
to do is Queue.get() and be sure they've got a message they can deal
with.

-- 
Nick Craig-Wood <nick at craig-wood.com> -- http://www.craig-wood.com/nick



More information about the Python-list mailing list