Commit b4febc79 authored by Amaury Forgeot d'Arc's avatar Amaury Forgeot d'Arc

Prevent test_queue from leaking: one worker thread was not stopped.

The version in trunk/ is correct; the problem with 3.0 is that
None cannot be used as a marker in a PriorityQueue, because it cannot be compared with ints.
parent 36e6310e
......@@ -144,7 +144,7 @@ class BaseQueueTest(unittest.TestCase, BlockingTestMixin):
def worker(self, q):
while True:
x = q.get()
if x is None:
if x < 0:
q.task_done()
return
with self.cumlock:
......@@ -160,7 +160,8 @@ class BaseQueueTest(unittest.TestCase, BlockingTestMixin):
q.join()
self.assertEquals(self.cum, sum(range(100)),
"q.join() did not block until all tasks were done")
q.put(None) # instruct the threads to close
for i in (0,1):
q.put(-1) # instruct the threads to close
q.join() # verify that you can join twice
def test_queue_task_done(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment