c1 = p.connect()
c2 = p.connect()
- threads = set()
+ threads = []
for i in range(2):
t = threading.Thread(target=waiter,
args=(p, timeout, max_overflow))
t.start()
- threads.add(t)
+ threads.append(t)
c1.invalidate()
c2.invalidate()
c1 = p1.connect()
+ threads = []
for i in range(5):
t = threading.Thread(target=waiter, args=(p1, ))
- t.setDaemon(True)
t.start()
+ threads.append(t)
time.sleep(.5)
eq_(canary, [1])
p1._pool.abort(p2)
- time.sleep(1)
+
+ for t in threads:
+ t.join(join_timeout)
+
eq_(canary, [1, 2, 2, 2, 2, 2])
def test_dispose_closes_pooled(self):