Why are "broken iterators" broken?
Fredrik Lundh
fredrik at pythonware.com
Sun Sep 21 12:36:20 EDT 2008
Roy Smith wrote:
> There are plausible examples of collections which grow while you're
> iterating over them. I'm thinking specifically of a queue in a
> multi-threaded application. One thread pushes work onto the back of the
> queue while another pops from the front. The queue could certainly go
> empty at times. But, maybe a Python iterator is just the wrong way to
> model such behavior.
you probably want the consumer thread to block when it catches up with
the producer, rather than exit.
(that's the default behaviour of Python's Queue object, btw)
</F>
More information about the Python-list
mailing list