[issue27747] Broken example in the queue module documentation

2016-08-12 Thread R. David Murray
Changes by R. David Murray : -- stage: -> resolved type: enhancement -> behavior ___ Python tracker ___ ___ Python-bugs-list mailing

[issue27747] Broken example in the queue module documentation

2016-08-12 Thread Paulo Gabriel Poiati
Paulo Gabriel Poiati added the comment: You are absolutely right David. I was calling join after putting `None` in the queue. Sorry, I'm closing this. -- resolution: -> not a bug status: open -> closed ___ Python tracker

[issue27747] Broken example in the queue module documentation

2016-08-12 Thread R. David Murray
R. David Murray added the comment: The example looks correct to me. Have you tested it and seen it hang? The q.join() is done, and returns once all the puts have been processed. *Then* None is put for each worker, which terminates the worker thread. There's no q.join() to block at that poin

[issue27747] Broken example in the queue module documentation

2016-08-12 Thread Paulo Gabriel Poiati
New submission from Paulo Gabriel Poiati: I believe the code example at https://docs.python.org/3.6/library/queue.html is broken. The break condition in the worker loop (when the queued value is None) must call the `task_done` before breaking, otherwise the code blocks indefinitely in the `que