"Hendrik van Rooyen" <[EMAIL PROTECTED]> writes:
> am aware of Queue module - the same app uses it for something else.
> I dont like too many try -- excepts in the code - I find they confuse
> me when I try to read it later - and in this case I cannot block on waiting 
> for
> the queue to fill.

Do you have multiple threads reading from the same queue?  If not then
you can use queue.empty() to see whether the queue is empty.  If yes,
queue.empty isn't reliable (it can return nonempty, and then another
thread empties out the queue before you get a chance to read it).  But
you could always wrap the queue:

    QUEUE_IS_EMPTY = object()   # global sentinel

    def get_from_queue(queue):
       try:
          return queue.get(block=False)
       except Queue.Empty:
          return QUEUE_IS_EMPTY

Maybe it's worth adding a method like that to the Queue module in the stdlib.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to