diff options
| author | David Szotten <davidszotten@gmail.com> | 2014-04-05 17:12:58 +0100 |
|---|---|---|
| committer | Sergey Shepelev <temotor@gmail.com> | 2015-02-21 14:58:46 +0300 |
| commit | c43d498f01d47c402b20c1701d7b97da49b53195 (patch) | |
| tree | efd784daa25eea47cefe1fce40665a76913d0e23 /eventlet/tpool.py | |
| parent | a6ce444265d36fb23361809d40da73caf4864487 (diff) | |
| download | eventlet-tm2.tar.gz | |
make sure we return results during killalltm2
since we are about to delete the _rspq
Diffstat (limited to 'eventlet/tpool.py')
| -rw-r--r-- | eventlet/tpool.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/eventlet/tpool.py b/eventlet/tpool.py index e7f0db1..8d73814 100644 --- a/eventlet/tpool.py +++ b/eventlet/tpool.py @@ -292,6 +292,16 @@ def killall(): for thr in _threads: thr.join() del _threads[:] + + # return any remaining results + while not _rspq.empty(): + try: + (e, rv) = _rspq.get(block=False) + e.send(rv) + e = rv = None + except Empty: + pass + if _coro is not None: greenthread.kill(_coro) _rsock.close() |
