[john peter] > what happens behind the scenes when i create a Queue.Queue() without > specifying a maxsize? does a block of space gets allocated initially then > dynamically "expanded" as needed?
Yes. > if so, what is the default size of the initial space? It's initially empty. > is it always better to specify a big enough maxsize No. > initially for efficiency purposes, The intent has nothing to do with efficiency: bounded and unbounded queues are _semantic_ variations. They can behave differently. Whether you want a bounded or unbounded queue depends on the needs of your app. A bounded queue is typically used, e.g., to mediate between producers and consumers with different processing rates. > or does it matter much? Shouldn't matter at all. Even if you specify a max size, the underlying container still starts its life empty, and grows and shrinks as needed. The semantic difference is in whether a .put() attempt may block. -- http://mail.python.org/mailman/listinfo/python-list