with pool.ConnectionPool(dsn, min_size=2) as p:
p.wait()
ts = [Thread(target=worker, args=(i,)) for i in range(6)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
times = [item[1] for item in results]
want_times = [0.2, 0.2, 0.4, 0.4, 0.6, 0.6]
ev.wait()
ts = [Thread(target=worker, args=(0.1,)) for i in range(4)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
assert len(success) == 4
assert len(errors) == 1
with pool.ConnectionPool(dsn, min_size=2, timeout=0.1) as p:
ts = [Thread(target=worker, args=(i,)) for i in range(4)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
assert len(results) == 2
assert len(errors) == 2
Thread(target=worker, args=(i, timeout))
for i, timeout in enumerate([0.4, 0.4, 0.1, 0.4, 0.4])
]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
sleep(0.2)
assert set(results) == set([0, 1, 3, 4])
assert len(p._pool) == 2 # no connection was lost
with pool.ConnectionPool(dsn, min_size=2, timeout=0.1) as p:
ts = [Thread(target=worker, args=(i,)) for i in range(4)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
assert len(results) == 3
assert len(errors) == 1
results = []
ts = [Thread(target=worker, args=(i,)) for i in range(6)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
want_times = [0.2, 0.2, 0.3, 0.4, 0.4, 0.4]
times = [item[1] for item in results]
assert p.max_idle == 0.2
ts = [Thread(target=worker, args=(i,)) for i in range(4)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
sleep(1)
assert results == [(4, 4), (4, 3), (3, 2), (2, 2), (2, 2)]
assert stats["requests_waiting"] == 0
ts = [Thread(target=worker, args=(i,)) for i in range(3)]
- [t.start() for t in ts]
+ for t in ts:
+ t.start()
sleep(0.1)
stats = p.get_stats()
- [t.join() for t in ts]
+ for t in ts:
+ t.join()
assert stats["pool_min"] == 2
assert stats["pool_max"] == 4
assert stats["pool_size"] == 3
p.wait(2.0)
ts = [Thread(target=worker, args=(i,)) for i in range(7)]
- [t.start() for t in ts]
+ for t in ts:
+ t.start()
sleep(0.1)
stats = p.get_stats()
- [t.join() for t in ts]
+ for t in ts:
+ t.join()
assert stats["pool_min"] == 2
assert stats["pool_max"] == 4
assert stats["pool_size"] == 4
p.wait(2.0)
ts = [Thread(target=worker, args=(i,)) for i in range(7)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
stats = p.get_stats()
assert stats["requests_num"] == 7
assert stats["requests_queued"] == 4
p.wait()
ts = [Thread(target=worker) for i in range(50)]
- [t.start() for t in ts]
- [t.join() for t in ts]
+ for t in ts:
+ t.start()
+ for t in ts:
+ t.join()
p.wait()
assert len(p._pool) < 7